Python 中使用 pandas Dataframe 删除重复的行

Python 中使用 pandas Dataframe 删除重复的行 :

1、(可选)可以使用 duplicated( )函数判断 是否有重复项

df.duplicated( )

输出的是 布尔值 FALSE 、TRUE

2、有重复项,则可以用drop_duplicates()移除重复项 

3、如上的1和2 中的duplicated( )和drop_duplicates( )方法是以默认的方式判断全部的列。

也可以对特定的列进行重复项判断,在括号中添加列名就可以了。如:

data_df_extractedReviews = pd.DataFrame({
        'userID': user_id_list,
        'productID': product_id_list,
        'overall': overall_list,
        # 'feature': feature_list,
        # 'opinion': opinion_list
        'feature_opinion_sentiment_pair':feature_opinion_sentiment_pair
    })  # 这样得到的 df 是含有重复 item的行的,而实际上item只有一个。所以,

    data_df_extractedReviews=data_df_extractedReviews.drop_duplicates('productID')

5.  norepeat_df = df.drop_duplicates(subset=['A_ID', 'B_ID'], keep='first')

#上面的命令去掉UNIT_ID和KPI_ID列中重复的行,并保留重复出现的行中第一次出现的行

补充:

当keep=False时,就是去掉所有的重复行

当keep=‘first'时,就是保留第一次出现的重复行

当keep='last'时就是保留最后一次出现的重复行。

(注意,这里的参数是字符串,要加引号!!!)

最后的结果:

【Reference】

https://www.jb51.net/article/155577.htm

原文地址:https://www.cnblogs.com/shenxiaolin/p/12593777.html