From c2ac235698ae3aef9d27096650ceb2914b0b4a6a Mon Sep 17 00:00:00 2001 From: jbrockmendel Date: Wed, 4 Dec 2019 13:36:03 -0800 Subject: [PATCH] REF: set non_index_axes at the end of create_axes --- pandas/io/pytables.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pandas/io/pytables.py b/pandas/io/pytables.py index c56445d6c2b6e..093d59e29447f 100644 --- a/pandas/io/pytables.py +++ b/pandas/io/pytables.py @@ -3739,15 +3739,15 @@ def get_object(self, obj, transposed: bool): """ return the data for this obj """ return obj - def validate_data_columns(self, data_columns, min_itemsize): + def validate_data_columns(self, data_columns, min_itemsize, non_index_axes): """take the input data_columns and min_itemize and create a data columns spec """ - if not len(self.non_index_axes): + if not len(non_index_axes): return [] - axis, axis_labels = self.non_index_axes[0] + axis, axis_labels = non_index_axes[0] info = self.info.get(axis, dict()) if info.get("type") == "MultiIndex" and data_columns: raise ValueError( @@ -3881,8 +3881,6 @@ def create_axes( new_non_index_axes.append((i, append_axis)) - self.non_index_axes = new_non_index_axes - # set axis positions (based on the axes) new_index_axes = [index_axes_map[a] for a in axes] for j, iax in enumerate(new_index_axes): @@ -3910,7 +3908,9 @@ def get_blk_items(mgr, blocks): blk_items = get_blk_items(block_obj._data, blocks) if len(new_non_index_axes): axis, axis_labels = new_non_index_axes[0] - data_columns = self.validate_data_columns(data_columns, min_itemsize) + data_columns = self.validate_data_columns( + data_columns, min_itemsize, new_non_index_axes + ) if len(data_columns): mgr = block_obj.reindex( Index(axis_labels).difference(Index(data_columns)), axis=axis @@ -3997,6 +3997,7 @@ def get_blk_items(mgr, blocks): self.data_columns = new_data_columns self.values_axes = vaxes self.index_axes = new_index_axes + self.non_index_axes = new_non_index_axes # validate our min_itemsize self.validate_min_itemsize(min_itemsize)