数据框看起来像这样
APMC Commodity Year Month Price
1 A 2015 Jan 1232
1 A 2015 Jan 1654
2 A 2015 Jan 9897
2 A 2015 Feb 3467
2 B 2016 Jan 7878
2 B 2016 Feb 8545
2 B 2016 Feb 3948
我想删除第二行和最后一行,因为 APMC、年份、商品和月份列的值相同。我该怎么做呢?原始数据集很大,我想对其进行更改(想想类似 inplace=True 的东西)。
最佳答案
您可以指定要检测重复项的列:
df.drop_duplicates(subset=['APMC', 'Year', 'Commodity', 'Month'],
inplace=True)
结果:
>>> df
APMC Commodity Year Month Price
0 1 A 2015 Jan 1232
2 2 A 2015 Jan 9897
3 2 A 2015 Feb 3467
4 2 B 2016 Jan 7878
5 2 B 2016 Feb 8545
删除的行:
删除列索引:
>>> pd.RangeIndex(0, 7).difference(df.index)
Int64Index([1, 6], dtype='int64')
关于python - 通过 pandas 根据多个条件删除重复值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53162909/