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发送SMTP邮件的教程
Apr 29 Python
Python实现将sqlite数据库导出转成Excel(xls)表的方法
Jul 17 Python
Python AES加密实例解析
Jan 18 Python
python 限制函数调用次数的实例讲解
Apr 21 Python
Python中pandas dataframe删除一行或一列:drop函数详解
Jul 03 Python
对python中的iter()函数与next()函数详解
Oct 18 Python
python实现简单图片物体标注工具
Mar 18 Python
python 多进程共享全局变量之Manager()详解
Aug 15 Python
django 多数据库及分库实现方式
Apr 01 Python
解决paramiko执行命令超时的问题
Apr 16 Python
python 比较字典value的最大值的几种方法
Apr 17 Python
python如何获取网络数据
Apr 11 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中文件上传的安全问题
2006/10/09 PHP
PHP得到mssql的存储过程的输出参数功能实现
2012/11/23 PHP
PHP正则表达式过滤html标签属性(DEMO)
2016/05/04 PHP
关于__defineGetter__ 和__defineSetter__的说明
2007/05/12 Javascript
使用JQUERY Tabs插件宿主IFRAMES
2010/01/01 Javascript
学习javascript,实现插入排序实现代码
2011/07/31 Javascript
jquery+ajax+C#实现无刷新操作数据库数据的简单实例
2014/02/08 Javascript
Jquery利用mouseenter和mouseleave实现鼠标经过弹出层且可以点击
2014/02/12 Javascript
jquery实现简单的banner轮播效果【实例】
2016/03/30 Javascript
JavaScript中绑定事件的三种方式及去除绑定
2016/11/05 Javascript
nodejs multer实现文件上传与下载
2017/05/10 NodeJs
VUE中使用Vue-resource完成交互
2017/07/21 Javascript
ReactNative之FlatList的具体使用方法
2017/11/29 Javascript
JS组件系列之Gojs组件 前端图形化插件之利器
2017/11/29 Javascript
Vue 开发音乐播放器之歌手页右侧快速入口功能
2018/08/08 Javascript
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
2018/08/27 Javascript
vue实现将一个数组内的相同数据进行合并
2019/11/07 Javascript
解析Python中的异常处理
2015/04/28 Python
python web框架学习笔记
2016/05/03 Python
Ubuntu下使用python读取doc和docx文档的内容方法
2018/05/08 Python
对于Python深浅拷贝的理解
2019/07/29 Python
CSS3实现线性渐变用法示例代码详解
2020/08/07 HTML / CSS
allbeauty美国:英国在线美容店
2019/03/11 全球购物
医学护理系毕业生求职信
2013/10/01 职场文书
篮球社团活动总结
2014/06/27 职场文书
机关党员四风问题个人整改措施
2014/10/26 职场文书
2014保险公司内勤工作总结
2014/12/16 职场文书
优秀共青团员事迹材料
2014/12/25 职场文书
自我检讨书范文
2015/01/28 职场文书
教师节寄语2015
2015/03/23 职场文书
离婚起诉书范文2016
2015/11/26 职场文书
2016暑期师德培训心得体会
2016/01/09 职场文书
MySQL中distinct和count(*)的使用方法比较
2021/05/26 MySQL
Python一些基本的图像操作和处理总结
2021/06/23 Python
python树莓派通过队列实现进程交互的程序分析
2021/07/04 Python
win11无线投屏在哪设置? win11无线投屏功能的使用方法
2022/04/08 数码科技