【发布时间】:2018-09-16 12:05:09
【问题描述】:
具有以下数据框:
name value count total_count
0 A 0 1 20
1 A 1 2 20
2 A 2 2 20
3 A 3 2 20
4 A 4 3 20
5 A 5 3 20
6 A 6 2 20
7 A 7 2 20
8 A 8 2 20
9 A 9 1 20
----------------------------------
10 B 0 10 75
11 B 5 30 75
12 B 6 20 75
13 B 8 10 75
14 B 9 5 75
我想对数据进行透视,按名称值对每一行进行分组,然后根据聚合到 bin 中的值和计数列创建列。
说明:我有 10 个可能的值,范围 0-9,并非所有值都存在于每个组中。在上面的示例中,组 B 缺少值 1、2、3、4、7。我想创建一个包含 5 个 bin 的直方图,忽略缺失值并计算每个 bin 的计数百分比。所以结果会是这样的:
name 0-1 2-3 4-5 6-7 8-9
0 A 0.150000 0.2 0.3 0.2 0.150000
1 B 0.133333 0.0 0.4 0.4 0.066667
例如,对于组 A 的 bin 0-1,计算是值 0,1 (1+2) 的计数总和除以 total_count 组 A
name 0-1
0 A (1+2)/20 = 0.15
我一直在研究 hist method 和 this StackOverflow question,但仍在努力找出正确的方法。
【问题讨论】:
标签: python pandas pivot-table histogram