详解pandas使用drop_duplicates去除DataFrame重复项参数
作者:OraYang 时间:2021-09-12 12:36:26
Pandas之drop_duplicates:去除重复项
方法
DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)
参数
这个drop_duplicate方法是对DataFrame格式的数据,去除特定列下面的重复行。返回DataFrame格式的数据。
subset : column label or sequence of labels, optional 用来指定特定的列,默认所有列
keep : {‘first', ‘last', False}, default ‘first' 删除重复项并保留第一次出现的项
inplace : boolean, default False 是直接在原来数据上修改还是保留一个副本
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去重,最好采用开头提到的那行代码。
来源:https://blog.csdn.net/u010665216/article/details/78559091
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Smush it - 一款图片压缩的Firefox插件,很好,很强大!
![](https://img.aspxhome.com/file/UploadPic/20094/12/smush-it-92s.gif)
Python技能树共建之python urllib 模块
Oracle11.2 命令行手工最简创建数据库的过程
ASP程序中输出Excel文件实例一则
Access数据库操作中出现的怪现象
分享Pycharm中一些不为人知的技巧
![](https://img.aspxhome.com/file/2023/3/72753_0s.jpg)
网站图片与文本谁更重要?(中英文对照)
python获取服务器响应cookie的实例
如何批量消除网页超级链接上的“虚线框”
页面中图像格式的选用之我见
![](https://img.aspxhome.com/file/UploadPic/200710/31/2007103119144423s.png)
利用Python上传日志并监控告警的方法详解
![](https://img.aspxhome.com/file/2023/7/69477_0s.png)
使用php将某个目录下面的所有文件罗列出来的方法详解
Python代码注释规范代码实例解析
基于php解决json_encode中文UNICODE转码问题
Python 实现自动化Excel报表的步骤
![](https://img.aspxhome.com/file/2023/2/70712_0s.jpg)
Go语言实现文件上传
PHP JSAPI调支付API实现微信支付功能详解
![](https://img.aspxhome.com/file/2023/3/55363_0s.png)
Python实现计算文件夹下.h和.cpp文件的总行数
Mozilla专有JavaScript扩展之一(__noSuchMethod__)
python爬虫将js转化成json实现示例
![](https://img.aspxhome.com/file/2023/0/80640_0s.png)