Dataframe 如何去重

python中的pandas模块中对重复数据去重步骤:

1)利用DataFrame中的duplicated方法返回一个布尔型的Series,显示各行是否有重复行,没有重复行显示为FALSE有重复行显示为TRUE

2)再利用DataFrame中的drop_duplicates方法用于返回一个移除了重复行的DataFrame


注释:

如果duplicated方法和drop_duplicates方法中没有设置参数,则这两个方法默认会判断全部列元素都重复才返回,如果在这两个方法中加入了指定的属性名(或者称为列名),例如:frame.drop_duplicates(['state']),则仅对指定列(state列)进行重复的判断,决定是否返回改行。


具体实例如下:

[plain]  view plain  copy
  1. >>> import pandas as pd  
  2. >>> data={'state':[1,1,2,2],'pop':['a','b','c','d']}  
  3. >>> frame=pd.DataFrame(data)  
  4. >>> frame  
  5.   pop  state  
  6. 0   a      1  
  7. 1   b      1  
  8. 2   c      2  
  9. 3   d      2  
  10. >>> IsDuplicated=frame.duplicated()  
  11. >>> print IsDuplicated  
  12. 0    False  
  13. 1    False  
  14. 2    False  
  15. 3    False  
  16. dtype: bool  
  17. >>> frame=frame.drop_duplicates(['state'])  
  18. >>> frame  
  19.   pop  state  
  20. 0   a      1  
  21. 2   c      2  
  22. >>> IsDuplicated=frame.duplicated(['state'])  
  23. >>> print IsDuplicated  
  24. 0    False  
  25. 2    False  
  26. dtype: bool  
  27. >>>   

猜你喜欢

转载自blog.csdn.net/hellocsz/article/details/79939235