Closed
Description
I am on 0.13.0rc1-64-gceec8bf
(master). I get the IndexError
when trying to print large dataframe with MultiIndex full of NaNs. Following script raises the error
import pandas as pd
import numpy as np
n = 3500000
arrays = [range(n), np.empty(n)]
index = pd.MultiIndex.from_tuples(zip(*arrays))
s = pd.Series(np.zeros(n), index=index)
print(s)
And here is a Traceback
Traceback (most recent call last):
File "/home/mvinkler/Documents/analysis/models/test.py", line 12, in <module>
print(s)
File "/home/mvinkler/Downloads/pandas/pandas/core/base.py", line 35, in __str__
return self.__bytes__()
File "/home/mvinkler/Downloads/pandas/pandas/core/base.py", line 47, in __bytes__
return self.__unicode__().encode(encoding, 'replace')
File "/home/mvinkler/Downloads/pandas/pandas/core/series.py", line 857, in __unicode__
result = self._tidy_repr(min(30, max_rows - 4))
File "/home/mvinkler/Downloads/pandas/pandas/core/series.py", line 876, in _tidy_repr
head = self.iloc[:num]._get_repr(print_header=True, length=False,
File "/home/mvinkler/Downloads/pandas/pandas/core/generic.py", line 946, in _indexer
setattr(self, iname, indexer(self, name))
File "/home/mvinkler/Downloads/pandas/pandas/core/generic.py", line 1607, in __setattr__
elif name in self._info_axis:
File "/home/mvinkler/Downloads/pandas/pandas/core/index.py", line 2498, in __contains__
self.get_loc(key)
File "/home/mvinkler/Downloads/pandas/pandas/core/index.py", line 2986, in get_loc
return self._get_level_indexer(key, level=0)
File "/home/mvinkler/Downloads/pandas/pandas/core/index.py", line 3123, in _get_level_indexer
loc = level_index.get_loc(key)
File "/home/mvinkler/Downloads/pandas/pandas/core/index.py", line 1017, in get_loc
return self._engine.get_loc(_values_from_object(key))
File "index.pyx", line 129, in pandas.index.IndexEngine.get_loc (pandas/index.c:3560)
File "index.pyx", line 138, in pandas.index.IndexEngine.get_loc (pandas/index.c:3314)
File "util.pxd", line 40, in util.get_value_at (pandas/index.c:13101)
IndexError: index out of bounds