脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - pandas DataFrame 删除重复的行的实现方法

pandas DataFrame 删除重复的行的实现方法

2021-05-24 00:16qq_40981268 Python

这篇文章主要介绍了pandas DataFrame 删除重复的行的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1. 建立一个dataframe

?
1
c=pd.dataframe({'a':['dog']*3+['fish']*3+['dog'],'b':[10,10,12,12,14,14,10]})

pandas DataFrame 删除重复的行的实现方法

2. 判断是否有重复项

用duplicated( )函数判断  

?
1
c.duplicated()

pandas DataFrame 删除重复的行的实现方法

3.  有重复项,则可以用drop_duplicates()移除重复项

?
1
c.drop_duplicates()

pandas DataFrame 删除重复的行的实现方法

4. duplicated( )和drop_duplicates( )方法是以默认的方式判断全部的列(上面的例子中是看两个变量a和b是否都是重复出现)。

我们也可以对特定的列进行重复项判断。

?
1
2
3
c.duplicated(['a'])   c.drop_duplicates(['a'])
 
c.duplicated(['b'])   c.drop_duplicates(['b'])

pandas DataFrame 删除重复的行的实现方法

5.  norepeat_df = df.drop_duplicates(subset=['a_id', 'b_id'], keep='first')

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

补充: 

  • 当keep=false时,就是去掉所有的重复行 
  • 当keep=‘first'时,就是保留第一次出现的重复行 
  • 当keep='last'时就是保留最后一次出现的重复行。 

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/qq_40981268/article/details/86498762

延伸 · 阅读

精彩推荐