通过熊猫基于多个条件删除重复值

时间:2018-11-05 22:05:20

标签: python pandas

数据框看起来像这样

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列,Year,Commodity和month的值相同。我该怎么做呢?原始数据集很大,我想在其中进行更改(想像inplace = True)。

1 个答案:

答案 0 :(得分:1)

您可以指定检测重复项的列:

var data = new Object();

data.TVSeriesReleaseYear = $(this).data('tvseriesreleaseyear') || null;
data.CollectionName = $(this).data('collectionname') || null;
# ... etc ...
var jsonData = JSON.stringify(data)

$.post('{% url submit %}', jsonData, function () {
    ...
});

结果:

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