You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandas多级索引DataFrame中查找组内元数据不一致的分组?

筛选组内元数据不一致的分组解决方案

核心思路

先按Group分组统计每个元数据字段的唯一值数量,找出至少有一个字段存在多个不同值的分组,再从原DataFrame中提取这些分组的全部数据。

完整代码实现

import pandas as pd

# 读取数据生成多级索引DataFrame
df = pd.read_csv('files.csv', index_col=['Group', 'File Number'])

# 统计每个Group下各字段的唯一值数量,标记存在不一致的分组
has_inconsistency = df.groupby(level='Group').nunique().any(axis=1)

# 提取存在不一致的分组名称
target_groups = has_inconsistency[has_inconsistency].index

# 筛选出目标分组的全部数据
result_df = df.loc[target_groups]

代码说明

  • df.groupby(level='Group').nunique():按Group维度分组,计算每个组内Value 1、Value 2的唯一值数量
  • .any(axis=1):对每个分组进行判断,只要有一个字段的唯一值数量大于1(也就是组内存在不一致),就标记为True
  • 最后通过loc索引,直接提取所有标记为True的分组数据,得到的result_df就是你需要的结果

内容的提问来源于stack exchange,提问作者redwytnblakII

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 11:15:37