python - 根据重复在熊猫数据框中使用多个重复子集进行排序
问题描述
我是 python 新手,我想根据数据框集中的某些数据列对一些重复数据进行排序,例如
Import pandas as pd
df = pd.read_excel('Data.xlsx', index = ['ID']
df2 = df[df.duplicated(subset = ['A','B'], keep = False)]
print (df2)
假设输出将是这样的
'ID'|'Name' |'A'|'B'|
1 | Ash | 1 | 1 |
2 | James | 1 | 1 |
3 | Ash | 1 | 1 |
4 | James | 1 | 1 |
5 | Ash | 2 | 1 |
6 | James | 1 | 1 |
7 | Ash | 2 | 1 |
我希望数据输出如下:
'Name' |'A'|'B'|'Pattern'|'Frequency of Pattern'|
Ash | 1 | 1 | 1 | 2 |
Ash | 2 | 1 | 2 | 2 |
James | 1 | 1 | 3 | 3 |
到目前为止,我还没有找到任何类似的帖子
解决方案
用于GroupBy.size
计数重复,然后通过以下方式将新列添加到特定位置DataFrame.insert
:
df4 = df3.groupby(['Name','A','B']).size().reset_index(name='Frequency of Pattern')
df4.insert(3, 'Pattern', df4.index + 1)
print (df4)
Name A B Pattern Frequency of Pattern
0 Ash 1 1 1 2
1 Ash 2 1 2 2
2 James 1 1 3 3
推荐阅读
- php - 更新自定义 WP 网站(4.9.9 到当前)的最佳方式?
- kubernetes - Kubernetes 出站请求使用服务 IP
- java - 下载使用 Selenium JAVA 在新窗口中打开的 PDF
- java - 在android项目中将所有名称变量和函数从上更改为下Camelcase
- wordpress - 如何用新模板替换wordpress中avada主题中的博客文章页面模板?
- c# - 如何在 LINQ 中使用 SQL 内连接语句作为查询
- python - 安装 Python 模块 Pygame 和 Pygame Zero 时出错
- css - 我如何使用 max()/min() 作为 css-math-functions 而不是 stylus-bulidin-functions
- c - 交叉编译时添加 -O2 选项会导致展开回溯失败
- c# - 从 html c# 在 iTextSharp pdf 中显示中文文本