Closed
Description
Urp:
n [1]: import pandas as pd
In [2]: mi = pd.MultiIndex(labels = [[1.25, 0.25, 3.1], [3.2, 1.2, 4.1]], levels=[['a'], ['a', 'b', 'c']])
In [3]: mi
Out[3]:
MultiIndex(levels=[[u'a'], [u'a', u'b', u'c']],
labels=[[1, 0, 3], [3, 1, 4]])
In [4]: mi.values
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-4-e9591d864c48> in <module>()
----> 1 mi.values
/Users/jtratner/projects/python/pandas/pandas/core/index.py in values(self)
2163 values = []
2164 for lev, lab in zip(self.levels, self.labels):
-> 2165 taken = com.take_1d(lev.values, lab)
2166 # Need to box timestamps, etc.
2167 if hasattr(lev, '_box_values'):
/Users/jtratner/projects/python/pandas/pandas/core/common.py in take_nd(arr, indexer, axis, out, fill_value, mask_info, allow_fill)
630 func = _get_take_nd_function(arr.ndim, arr.dtype, out.dtype,
631 axis=axis, mask_info=mask_info)
--> 632 func(arr, indexer, out, fill_value)
633 return out
634
/Users/jtratner/projects/python/pandas/pandas/algos.so in pandas.algos.take_1d_object_object (pandas/algos.c:68489)()
IndexError: Out of bounds on buffer access (axis 0)
In [5]: mi
Out[5]:
MultiIndex(levels=[[u'a'], [u'a', u'b', u'c']],
labels=[[1, 0, 3], [3, 1, 4]])
In [6]: mi.levels
Out[6]: FrozenList([[u'a'], [u'a', u'b', u'c']])
In [7]: mi.labels
Out[7]: FrozenList([[1, 0, 3], [3, 1, 4]])
Labels.max() needs to be <= len(levels) for each pair of levels and labels.