python - 计算 Dataframe 中所有列的唯一值组合
问题描述
我想找到我的数据框中所有列的唯一值的计数。
我的数据框中有 400 多列,我尝试了以下方法:
code:dfi.groupby([column names]).size().to_frame('count').reset_index()
但我不断收到以下错误:
Length of passed values is 4462, index implies 0
我怎样才能解决这个问题?
解决方案
第 1 步:创建随机数据框。
df = pd.DataFrame({'x1': ['A','B','A','A','B','A','A','A','B'], 'x2': [1,3,2,2,3,1,2,3,3], 'x3': [1,0,2,2,3,1,2,3,0], 'x4':[1,0,2,1,3,1,2,3,0]})
print(df)
x1 x2 x3 x4
0 A 1 1 1
1 B 3 0 0
2 A 2 2 2
3 A 2 2 1
4 B 3 3 3
5 A 1 1 1
6 A 2 2 2
7 A 3 3 3
8 B 3 0 0
第 2 步:计算唯一行
df['count'] = df.groupby(list(df.columns))[list(df.columns)[0]].transform('count')
df=df.drop_duplicates().reset_index().drop(['index'],axis=1)
print(df)
x1 x2 x3 x4 count
0 A 1 1 1 2
1 B 3 0 0 2
2 A 2 2 2 2
3 A 2 2 1 1
4 B 3 3 3 1
5 A 3 3 3 1
推荐阅读
- sql - SQL查询以获取单独列中每个元素的总和
- python - 如何在 django 上禁用自动文件上传?
- sql - 在 SQL Server 2019 中递归导入 JSON 文件
- c++ - 使用代理模式时如何区分读取和写入而不破坏与原始类型的交互和其他类型的成员访问?
- gdb - 无法在 Ubuntu 20.04 上构建 GDB master 2020 年 7 月 9 日
- c++ - 为什么具有显式声明的移动构造函数的类会失败`std::is_move_constructible_v`?
- git - 将分支推送到远程存储库时遇到错误:rejected master -> master (pre-receive hook denied)
- c++ - OpenGL:如何改变每个顶点的颜色?
- java - 可以逐个 JFrame 控制 GUI 缩放吗?
- asp.net-core - 在 Razor/EF Core 中的 Table-per-Type 数据库模型中读取和更新数据的最佳方法是什么?