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


Posted in Python onJanuary 30, 2019

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],
 'Bonus': [2, 2, 2, 2, 3, 4, 5, 6]
})
print(salaries)
print(salaries['Bonus'].duplicated(keep='first'))
print(salaries[salaries['Bonus'].duplicated(keep='first')].index)
print(salaries[salaries['Bonus'].duplicated(keep='first')])
print(salaries['Bonus'].duplicated(keep='last'))
print(salaries[salaries['Bonus'].duplicated(keep='last')].index)
print(salaries[salaries['Bonus'].duplicated(keep='last')])

输出如下:

Bonus Salary Year name
0  2  1 2016 BOSS
1  2  2 2016 Lilei
2  2  3 2016 Lilei
3  2  4 2016 Han
4  3  5 2017 BOSS
5  4  6 2017 BOSS
6  5  7 2017 Han
7  6  8 2017 BOSS
0 False
1  True
2  True
3  True
4 False
5 False
6 False
7 False
Name: Bonus, dtype: bool
Int64Index([1, 2, 3], dtype='int64')
 Bonus Salary Year name
1  2  2 2016 Lilei
2  2  3 2016 Lilei
3  2  4 2016 Han
0  True
1  True
2  True
3 False
4 False
5 False
6 False
7 False
Name: Bonus, dtype: bool
Int64Index([0, 1, 2], dtype='int64')
 Bonus Salary Year name
0  2  1 2016 BOSS
1  2  2 2016 Lilei
2  2  3 2016 Lilei

非pandas

对于如nunpy中的这些操作主要如下:

假设有数组

a = np.array([1, 2, 1, 3, 3, 3, 0])

想找出 [1 3]

则有

方法1

m = np.zeros_like(a, dtype=bool)
m[np.unique(a, return_index=True)[1]] = True
a[~m]
方法2

a[~np.in1d(np.arange(len(a)), np.unique(a, return_index=True)[1], assume_unique=True)]
方法3

np.setxor1d(a, np.unique(a), assume_unique=True)
方法4

u, i = np.unique(a, return_inverse=True)
u[np.bincount(i) > 1]
方法5

s = np.sort(a, axis=None)
s[:-1][s[1:] == s[:-1]]

参考:https://stackoverflow.com/questions/11528078/determining-duplicate-values-in-an-array

以上这篇Pandas统计重复的列里面的值方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python greenlet实现原理和使用示例
Sep 24 Python
Python正则表达式匹配ip地址实例
Oct 09 Python
使用rpclib进行Python网络编程时的注释问题
May 06 Python
Python程序退出方式小结
Dec 09 Python
用python实现的线程池实例代码
Jan 06 Python
对python GUI实现完美进度条的示例详解
Dec 13 Python
Spring Cloud Feign高级应用实例详解
Dec 10 Python
django在保存图像的同时压缩图像示例代码详解
Feb 11 Python
python读取图像矩阵文件并转换为向量实例
Jun 18 Python
详解查看Python解释器路径的两种方式
Oct 15 Python
python自动生成sql语句的脚本
Feb 24 Python
Python 中的 copy()和deepcopy()
Nov 07 Python
自学python的建议和周期预算
Jan 30 #Python
python DataFrame 取差集实例
Jan 30 #Python
对python dataframe逻辑取值的方法详解
Jan 30 #Python
对Python中DataFrame选择某列值为XX的行实例详解
Jan 29 #Python
把pandas转换int型为str型的方法
Jan 29 #Python
使用pandas把某一列的字符值转换为数字的实例
Jan 29 #Python
Python不同目录间进行模块调用的实现方法
Jan 29 #Python
You might like
探讨PHP调用时间格式的参数详解
2013/06/06 PHP
php遍历所有文件及文件夹的方法深入解析
2013/06/08 PHP
PHP处理Oracle的CLOB实例
2014/11/03 PHP
php实现TCP端口检测的方法
2015/04/01 PHP
php实现递归的三种基本方式
2020/07/04 PHP
PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)
2016/01/07 PHP
PHP基于XMLWriter操作xml的方法分析
2017/07/17 PHP
Div自动滚动到末尾的代码
2008/10/26 Javascript
JavaScript中URL编码函数代码
2011/01/11 Javascript
Javascript监视变量变化的方法
2015/06/09 Javascript
JavaScript实战之带收放动画效果的导航菜单
2016/08/16 Javascript
分享JavaScript监听全部Ajax请求事件的方法
2016/08/28 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
2017/05/03 Javascript
JavaScript创建对象的七种方式(推荐)
2017/06/26 Javascript
前端主流框架vue学习笔记第二篇
2017/07/26 Javascript
vue实现城市列表选择功能
2018/07/16 Javascript
NodeJS 实现多语言的示例代码
2018/09/11 NodeJs
跟老齐学Python之Import 模块
2014/10/13 Python
浅析Python中的多重继承
2015/04/28 Python
python基于右递归解决八皇后问题的方法
2015/05/25 Python
numpy返回array中元素的index方法
2018/06/27 Python
python快速排序的实现及运行时间比较
2019/11/22 Python
PIL包中Image模块的convert()函数的具体使用
2020/02/26 Python
Chantelle仙黛尔内衣美国官网:法国第一品牌内衣
2018/07/26 全球购物
Java的基础面试题附答案
2016/01/10 面试题
《故乡》教学反思
2014/04/10 职场文书
优秀团干部个人事迹
2014/05/29 职场文书
信息与工商管理职业规划范文:为梦想而搏击
2014/09/11 职场文书
党的群众路线教育实践活动学习计划
2014/11/03 职场文书
无锡灵山大佛导游词
2015/02/09 职场文书
幼儿园亲子活动通知
2015/04/24 职场文书
焦裕禄观后感
2015/06/03 职场文书
小学生教师节广播稿
2015/08/19 职场文书
mysql知识点整理
2021/04/05 MySQL
2022新作动画《福星小子》释出宣传影片 加入内田真礼&宫野真守配音演出
2022/04/08 日漫
Python基本的内置数据类型及使用方法
2022/04/13 Python