python - 如何知道分配给个人 p1 的孩子数量?
问题描述
在下面的数据(df2)中,我需要知道每个 p1 有多少(count)个孩子?例如:在这张图片中,显示的是单个 p1。我需要这张图片的数据表,格式如下。
p1_id | no. of p1|no. of p2| no. of p3 |
374971| 1 |3 | 4 |
.... |..... |...... |..... |
鉴于:没有一定的等级制度。例如,p1 可能有另一个 p1 在他下面或 p3 在他下面。并且可能有 n 个分支和节点。
Df2
id title parent_id
0 11 p1 11
1 12 p1 11
2 13 p2 12
3 14 p2 12
4 15 p2 13
5 16 p2 13
6 17 p3 13
这个 df2 问题应该给出如下输出
p1_id | no. of p1|no. of p2| no. of p3 |
11 | 1 |4 | 1 |
12 | 0 |2 | 0 |
解决方案
如果我正确理解您的问题,您只想计算每个 parent_id 有多少 p1、p2、p3 等。在这种情况下,您可以使用包含两列的列表来执行 .groupby:
df = pd.DataFrame.from_dict(
{'c_id':[374971,363401,373600,363401],
'title':['p1','p2','p1','p3'],
'parent_id':[443547,360652,256963,360652]
})
df.groupby(['parent_id','title']).count()
将给出与您想要的结果相似的结果,但格式不完全相同:
parent_id title c_id
256963 p1 1
360652 p2 1
p3 1
443547 p1 1
希望这可以帮助!
推荐阅读
- mysql - 为什么 WHERE 返回 0 行?
- deep-learning - 深度学习模型测试精度不稳定
- elasticsearch - 在 Grafana 中计算加权平均值
- javascript - 如何在反应中添加输入验证?
- ruby-on-rails - 从常量调用方法时Rails NoMethodError
- excel - 循环遍历有空格的列 - excel
- github-actions - 如何在 Github Actions 和 Monorepo 中使用子文件夹?
- mysql - 为什么这个索引只为 GROUP BY 查询提供恒定的时间改进?
- python - Pyglet 音频队列 - Python
- highcharts - 如何在 Highchart 上放置一些数据选项键 url?