pandas 去重 drop_duplicates 函数

DataFrame中存在重复的行或者几行中某几列的值重复,这时候需要去掉重复行,

示例如下:

data.drop_duplicates(subset=['A','B'],keep='first',inplace=True)

参数含义:


代码中subset对应的值是列名,表示只考虑这两列,将这两列对应值相同的行进行去重。
默认值为subset=None表示考虑所有列。

keep='first'表示保留第一次出现的重复行,是默认值。keep另外两个取值为"last"和False,
分别表示保留最后一次出现的重复行和去除所有重复行。

inplace=True表示直接在原来的DataFrame上删除重复项,而默认值False表示生成一个副本。

第二 : 将副本赋值给dataframe:

data=data.drop_duplicates(subset=None,keep='first',inplace=False)

 

这一行代码与文章开头提到的那行代码效果等效,但是如果在该DataFrame上新增一列:

data['extra']=test_data['item_price_level']


就会报如下错误:

SettingWithCopyWarning:  A value is trying to be set on a copy of a slice from a DataFrame. 

所以如果想对DataFrame去重,最好采用开头提到的那行代码。

 

pandas 去重 drop_duplicates 函数_第1张图片

你可能感兴趣的:(np,and,pd,去重,pandas)