Closed
Description
Is there any way to use Term to select membership in a large list for a Panel in HDFstore?
I have a hdfstore of the following format: https://gist.github.com/MichaelWS/7997225
My major axis is "id" and minor axis is "date". I am trying to give a large python list into Term and select if an id is in it. This works for a small list and does not work for a larger one. This fails for a list of 338 items.
store = pd.HDFStore(store_path, "r")
terms = []
if not members is None:
terms.append(Term("major_axis", "=", members))
if not additional_terms is None:
terms += additional_terms
if len(terms) > 0:
panel = store.select(country, where=terms)
else:
panel = store.select(country)
store.close()
Here is the traceback:
File "/home/michael/repos/franklin/factset/reference_data.py", line 1037, in get_frame
panel = store.select(country, where=terms)
File "/local/install/pandas_test/lib/python2.7/site- packages/pandas/io/pytables.py", line 637, in select
auto_close=auto_close).get_values()
File "/local/install/pandas_test/lib/python2.7/site-packages/pandas/io/pytables.py", line 1311, in get_values
results = self.func(self.start, self.stop)
File "/local/install/pandas_test/lib/python2.7/site-packages/pandas/io/pytables.py", line 626, in func
columns=columns, **kwargs)
File "/local/install/pandas_test/lib/python2.7/site-packages/pandas/io/pytables.py", line 3453, in read
sorted_values, items, tuple(N), take_labels)
File "/local/install/pandas_test/lib/python2.7/site-packages/pandas/core/reshape.py", line 1046, in block2d_to_blocknd
pvalues[i].flat[mask] = values[:, i]
IndexError: too many indices