有没有办法强制Pandas MultiIndex以与标准版相同的方式更新?见下文:
>>> df = pd.DataFrame([1, np.nan, 3], columns=['A'], index=['a', 'b', 'c'])
>>> df
A
a 1.0
b NaN
c 3.0
>>> df.dropna()
A
a 1.0
c 3.0
>>> df.index
Index(['a', 'b', 'c'], dtype='object')
>>> df.dropna().index
Index(['a', 'c'], dtype='object')
使用MultiIndex,这不会发生。 b
保留在索引中。
>>> df = pd.DataFrame([1, np.nan, 3, 4, np.nan, 6], columns=['A'], index=midx)
>>> df
A
x a 1.0
b NaN
c 3.0
y a 4.0
b NaN
c 6.0
>>> df.dropna()
A
x a 1.0
c 3.0
y a 4.0
c 6.0
>>> df.dropna().index
MultiIndex(levels=[['x', 'y'], ['a', 'b', 'c']],
labels=[[0, 0, 1, 1], [0, 2, 0, 2]])
是否还要强制索引更新?