pandas统计重复值次数的方法实现

本文主要介绍了pandas统计重复值次数的方法实现,分享给大家,具体如下:

from pandas import DataFrame

df = DataFrame({'key1':['a','a','b','b','a','a'],
        'key2':['one','two','one','two','one','one'],
        'data1':[1,2,3,2,1,1],
        # 'data2':np.random.randn(5)
        })
# 打印数据框
print(df)
#  data1 key1 key2
# 0   1  a one
# 1   2  a two
# 2   3  b one
# 3   2  b two
# 4   1  a one
# 5   1  a one

# 重复项
print(df[df.duplicated()])
#  data1 key1 key2
# 4   1  a one
# 5   1  a one

# 统计重复值
dup=df[df.duplicated()].count()
print(dup) # 最后两项重复
# data1  2
# key1   2
# key2   2

# 去除重复项
nodup=df[-df.duplicated()]
print(nodup)
#  data1 key1 key2
# 0   1  a one
# 1   2  a two
# 2   3  b one
# 3   2  b two

pandas 中 dataframe 重复元素个数的获取

方法有二:

1. 在调用duplicated方法后,非重复的元素会被标记为False,而重复的元素会被标记为True

count = 0
for i in users_info['user_id'].duplicated():
  if i == True:
    count = count + 1
count

【注1】users_info为一个dataframe框,user_id为其中一列

【注2】duplicated( )方法只会把重复的元素标记为True,而不会标记被重复的元素

2.这行代码的速度更快,drop_duplicates(['user_id'])方法为删除user_id列中相同的元素

users_info.shape[0] - users_info.drop_duplicates(['user_id']).shape[0]

【注】shape[0] 为获取行数

到此这篇关于pandas统计重复值次数的方法实现的文章就介绍到这了,更多相关pandas统计重复值次数内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 基于Python数据分析之pandas统计分析

    pandas模块为我们提供了非常多的描述性统计分析的指标函数,如总和.均值.最小值.最大值等,我们来具体看看这些函数: 1.随机生成三组数据 import numpy as np import pandas as pd np.random.seed(1234) d1 = pd.Series(2*np.random.normal(size = 100)+3) d2 = np.random.f(2,4,size = 100) d3 = np.random.randint(1,100,size = 1

  • Pandas统计重复的列里面的值方法

    pandas 代码如下: import pandas as pd import numpy as np salaries = pd.DataFrame({ 'name': ['BOSS', 'Lilei', 'Lilei', 'Han', 'BOSS', 'BOSS', 'Han', 'BOSS'], 'Year': [2016, 2016, 2016, 2016, 2017, 2017, 2017, 2017], 'Salary': [1, 2, 3, 4, 5, 6, 7, 8], 'Bon

  • 详解python pandas 分组统计的方法

    首先,看看本文所面向的应用场景:我们有一个数据集df,现在想统计数据中某一列每个元素的出现次数.这个在我们前面文章<如何画直方图>中已经介绍了方法,利用value_counts()就可以实现(具体回看文章) 但是,现在,我们考虑另外一个场景,我们假如要想统计其中两列元素出现次数呢?举个栗子: 在df数据集中,如果我们想统计A.B两列的元素的出现情况,也就是说,得到如下表. 从上面的最后一列可以看到,在A.B两列中,1 2 出现了2次,1 4 出现1次 ,1 6出现1次,2 3出现了2次, 2

  • pandas数据框,统计某列数据对应的个数方法

    现在要解决的问题如下: 我们有一个数据的表 第7列有许多数字,并且是用逗号分隔的,数字又有一个对应的关系: 我们要得到第7列对应关系的统计,就是每一行的第7列a有多少个,b有多少个 好了,我给的解决方法如下: #!/bin/python #-*-coding:UTF-8-*- import pandas as pd import numpy as np dfidspec = pd.read_table("one.txt")#这个是对应关系的文件 dfmgs = pd.read_tabl

  • pandas统计重复值次数的方法实现

    本文主要介绍了pandas统计重复值次数的方法实现,分享给大家,具体如下: from pandas import DataFrame df = DataFrame({'key1':['a','a','b','b','a','a'], 'key2':['one','two','one','two','one','one'], 'data1':[1,2,3,2,1,1], # 'data2':np.random.randn(5) }) # 打印数据框 print(df) # data1 key1 k

  • pandas去除重复值的实战

    目录 加载数据 sample抽样函数 指定需要更新的值 append直接添加 append函数用法 根据某一列key值进行去重(key唯一) 加载数据 首先,我们需要加载到所需要的数据,这里我们所需要的数据是同过sample函数采样过来的. import pandas as pd #这里说明一下,clean_beer.csv数据有两千多行数据 #所以从其中采样一部分,来进行演示,当然可以简单实用data.head()也可以做练习 data = pd.read_csv('clean_beer.cs

  • python重复值处理得方法

    前言: 如果大家接触过数据分析,那么大家可能都知道,最让人头疼的就是在数据录入的过程中,不可避免的会产生重复值,缺失值和异常值了,python也提供了一些方法让我们处理这些值.下面让我们一块来学习一下吧~ 今天,先处理重复值,首先创建一个包含重复值的DataFrame,如下: import pandas as pd data = pd.DataFrame([[1,2],[1,2],[3,4]],columns = ['a','b']) print(data) 我们将其打印出来,结果如下: 可以看

  • JS清除字符串中重复值的实现方法

    本文实例讲述了JS清除字符串中重复值的实现方法.分享给大家供大家参考,具体如下: /// <summary> /// 清除字符串中重复的值 /// </summary> /// <param name="Text">字符串</param> /// <param name="Label">标签(如:| ,)</param> function FilterRepeatStr(Text, Label)

  • MySQL 处理插入过程中的主键唯一键重复值的解决方法

    本篇文章主要介绍在插入数据到表中遇到键重复避免插入重复值的处理方法,主要涉及到IGNORE,ON DUPLICATE KEY UPDATE,REPLACE:接下来就分别看看这三种方式的处理办法. IGNORE 使用ignore当插入的值遇到主键(PRIMARY KEY)或者唯一键(UNIQUE KEY)重复时自动忽略重复的记录行,不影响后面的记录行的插入, 创建测试表 CREATE TABLE Tignore (ID INT NOT NULL PRIMARY KEY , NAME1 INT )d

  • JS两个数组比较,删除重复值的巧妙方法(推荐)

    偶尔需要我们比较两个数组,在一个数组中删除另一个数组存在的值.我们常常用的方法是循环比较判断并删除,最近看到另一个好方法巧妙删除的例子: var arr1 = ["i", "b", "c", "d", "e", "f","x"]; //数组A var arr2 = ["a", "b", "c", "

  • 获取python的list中含有重复值的index方法

    关于怎么获得,我想其实网上有很多答案. list.index( )获得值的索引值,但是如果list中含有的值一样,例如含有两个11,22,这样每次获得的都是第一个值的位置. 那么怎么去解决这个问题呢? 下面的程序对这个问题做了一定的解答 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Author : SundayCoder-俊勇 # @File : listlearn.py # 怎么获得list中的相同值的索引值 # 请看下列程序 s = [1

  • pandas 将索引值相加的方法

    如下所示: s1 = pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd']) s2 = pd.Series([10, 20, 30, 40], index=['a', 'b', 'c', 'd']) print s1 + s2 a 11 b 22 c 33 d 44 dtype: int64 s1 = pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd']) s2 = pd.Series([10, 20

  • Pandas中inf值替换的方法

    目录 出现inf的原因 解决办法 PS:为了方便后续处理,可以利用numpy,将这些inf值进行替换. 使用Pandas从MySQL读取数据,在处理之后再写回到数据库时报了一个错误: sqlalchemy.exc.ProgrammingError: (MySQLdb._exceptions.ProgrammingError) inf can not be used with MySQL 很明确报错说明,是因为DataFrame中存在inf数据 出现inf的原因 在数据处理过程中用到了除法,并且出

随机推荐