-
- Notifications
You must be signed in to change notification settings - Fork 19.4k
Closed
Labels
Needs TestsUnit test(s) needed to prevent regressionsUnit test(s) needed to prevent regressionsgood first issue
Description
Code Sample, a copy-pastable example if possible
In [1]: import pandas as pd In [2]: A = pd.MultiIndex(levels=[[], []], labels=[[], []], names=['a', 'b']) In [3]: B = pd.MultiIndex.from_arrays(arrays=[[], []], names=['a', 'b']) In [4]: A Out[4]: MultiIndex(levels=[[], []], labels=[[], []], names=[u'a', u'b']) In [5]: B Out[5]: MultiIndex(levels=[[], []], labels=[[], []], names=[u'a', u'b']) In [6]: pd.testing.assert_index_equal(A, B) ... AssertionError: MultiIndex level [0] are different MultiIndex level [0] classes are not equivalent [left]: Index([], dtype='object', name=u'a') [right]: Float64Index([], dtype='float64', name=u'a')Problem description
Empty iterables should be factorized to object types rather than Float64Index. This causes MultiIndexes created from the constructor to not equal those created using .from_arrays, which relies on factorization (ref PR #16782).
Metadata
Metadata
Assignees
Labels
Needs TestsUnit test(s) needed to prevent regressionsUnit test(s) needed to prevent regressionsgood first issue