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