【问题标题】:Filter a multi-index dataset (python/pandas)过滤多索引数据集(python/pandas)
【发布时间】:2021-12-10 15:00:53
【问题描述】:

我从数据集构建了一个数据透视表。 现在我想过滤数据集。 我只想保留第 21 列中的设置值与 22 中的设置值不同的行。如何使用多个索引来做到这一点?

resultaat.columns

结果:

MultiIndex([(  'SetValue', 21),
        (  'SetValue', 22)],
       names=[None, 'EquipmentID'])

【问题讨论】:

  • 具有预期样本输出的样本 DataFrame 比仅列更有帮助。

标签: python pandas dataframe indexing filter


【解决方案1】:

MultiIndex 中的选择值使用元组,对不相等使用cpmpare 并在boolean indexing 中进行过滤:

df1 = df[df[('SetValue', 21)].ne(df[('SetValue', 22)])]

如果将values参数添加到pivot

df = df.pivot(index=..., columns=..., values='SetValue')

df1 = df[df[21].ne(df[22])]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-22
    • 2020-07-17
    相关资源
    最近更新 更多