pandas(13):数据清洗(重复记录)

Posted 数据の变异

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pandas(13):数据清洗(重复记录)相关的知识,希望对你有一定的参考价值。

数据源:

df= pd.DataFrame({\'k1\': [ \'s1\']* 3 + [\'s2\']* 5,\'k2\' : [1, 1, 2, 3, 3, 4, 4,4]})
df

1 重复值判断和查看

df.duplicated(subset=None, keep=\'first\')

功能:
指定列数据重复项判断,返回指定列重复行boolean Series.
参数说明:

  • subset=None:列标签或标签序列,可选,只考虑某些列来识别重复项;默认使用所有列。
  • keep=\'first\':{\'first\',\'last\',False}
    • first:将第一次出现重复值标记为True。
    • last:将最后一次出现重复值标记为True。
    • False:将所有重复项标记为True。
# 默认判断所有列,只有第一条不标记为true,后面重复出现的都是true
df.duplicated()
# subset=[list],只判断指定列
df.duplicated(subset=[\'k1\'])
# keep=\'last\',只最后一次不标记为true,前面的都标记为true
df.duplicated(keep=\'last\')
# keep=false,所有重复项都标记为true
df.duplicated(keep=False)
# 查看记录重复数量,不包括首次出现那条记录
df.duplicated().value_counts()
# 查看记录重复的所有数量
df.duplicated(keep=False).value_counts()
# 查看所有重复记录
df[df.duplicated(keep=False)]
# 查看除首条外的所有重复记录
df[df.duplicated()]

2 重复值删除

df.drop_duplicates(subset=None, keep=\'first\', inplace=False)

以上是关于pandas(13):数据清洗(重复记录)的主要内容,如果未能解决你的问题,请参考以下文章

Pandas数据清洗方法

Pandas常用的数据清洗方法

​一文看懂数据清洗:缺失值、异常值和重复值的处理

pandas常用数据清洗方法

5Python 数据分析-Pandas数据清洗

pandas 文本处理大全(附代码)