python - 根据 Pandas DataFrame 中的索引和列获取出现次数以创建不同的数据视图
问题描述
我试图根据 Dataframe 中的索引来获取某些模式的出现,任何帮助将不胜感激
已手动添加一列作为索引,需要根据索引和列获取模式的出现
dataset sample
a(index) d
pattern 1 test
pattern 1 test
pattern 1 test2
pattern 2 test3
pattern 2 test
pattern 2 test
expected output
Am looking to make a dataframe something like below with the above sample data
pattern test test2 test3
----------------------------------
pattern 1 2 1 0
pattern 2 2 0 1
解决方案
如果您重置索引,这非常简单groupby
:
In [18]: df
Out[18]:
d
a
pattern 1 test
pattern 1 test
pattern 1 test2
pattern 2 test3
pattern 2 test
pattern 2 test
In [19]: df.reset_index().groupby(['a', 'd']).apply(len).reset_index()
Out[19]:
a d 0
0 pattern 1 test 2
1 pattern 1 test2 1
2 pattern 2 test 2
3 pattern 2 test3 1
推荐阅读
- python-2.7 - 逐行比较两个文件数据并将它们之间的差异仅存储在另一个文件中
- angular - 在 TypeScript 中将字符串转换为字符串文字的更好方法
- angular - 如何处理 Effect 中的 If-else 条件以引发错误或从 API 返回响应?
- python - 如何在使用 os.rename 之前判断文件是否可以重命名
- html - 如何从 HTML 为 SCSS 变量设置值?
- flutter - 如何使用 FlutterDriver 检查小部件是否可见
- c++ - 如何使用 lambda 避免代码重复 const 和 non-const 集合处理
- javascript - 解析从 PHP 脚本返回 2D 数组到 Wordpress 代码块内的 Javascript 变量
- sql-server - MS SQL Server 2016,文件流
- ruby-on-rails - rails 在每个页面上呈现两个主体,当前和上一个