我有一个multindex删除行,其中multindex的水平楠(熊猫)
value
userid date
NaN 2014-06-12 42799
2014-06-13 47673
2014-06-14 47042
2014-06-15 48079
2014-06-16 44873
2014-06-17 46586
2014-06-18 44575
1000000021 2014-06-17 0
1000000024 2014-06-22 20
1000000043 2014-06-12 14
2014-06-14 22
.
.
.
.
我想放弃的行,其中用户ID是南下表。如果我想放弃另一行我能做到
data = data.drop(1000000021)
但
data = data.drop('NaN')
data = data.drop(np.nan)
和其他企图都将返回不同品种的错误。有没有办法删除行而不必重新索引?
我已经试过这样的事情。 isnull没有为MultiIndex定义,所以命令会更像df.loc [〜pd.isnull(data.index.levels [0])],但这不起作用,因为返回的数组忽略NaN值。 – user262536
哦,我误解了你的DataFrame。试试'df.loc [〜(df.index.labels [0] == -1)]'。 – unutbu
运行。如果您正在计划建议df = df.loc [〜(df.index.labels [0] == np.nan)],它不起作用的原因与上述相同。 df.index.labels [0]数组不包含NaN值,因此我无法选择它。 – user262536