删除行后强制MultiIndex更新

时间:2018-05-10 14:03:35

标签: python pandas dataframe

有没有办法强制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]])

是否还要强制索引更新?

0 个答案:

没有答案