【发布时间】:2017-07-17 21:01:44
【问题描述】:
我是 Python 和 Pandas 的新手。 我正在清理一个包含 50,000 台设备(50,000 行和 10 列)的数据文件。 每条记录的一列 ('UNITNUMBER') 应该是唯一的。但是有重复,我正在尝试生成两个数据框:一个包含 UNITNUMBER 唯一的所有记录,第二个包含 UNITNUMBER 在另一条记录中重复的所有记录。
下面生成一个序列,其中 UNITNUMBER 是索引,True 表示重复,False 表示唯一。
MData=pd.read_excel(MFile,MFileTab, skiprows=0)
DupSeries=(MData.UNITNUMBER.value_counts()>1)
下面生成一个系列,其中每个设备有一个记录,顺序与原始 DataFrame 相同,索引是 UNITMASTER 值,系列值是 True 或 False。
DupSeries[MROData['UNITNUMBER']]
我预料到了
MData[DupSeries[MData['UNITNUMBER']]]
将产生 MData 中 UNITNUMBER 重复的所有记录,但我收到警告和错误:
用户警告:布尔系列键将被重新索引以匹配 DataFrame 索引。
ValueError: 无法从重复的轴重新索引
简而言之,我无法弄清楚语法。请帮忙。如果有的话,我很乐意使用完全不同的方法。
【问题讨论】:
标签: python pandas duplicates