在Python中分箱频率分布

Dur*_*tta 4 python numpy histogram

我有两个列表freq中的数据,如下所示:

value freq
1      2
2      1
3      3
6      2
7      3
8      3
....

我想要输出

bin freq
1-3   6
4-6   2
7-9   6
...

我可以编写几行代码来执行此操作.但是,我在查看标准python或Numpy中是否有构建函数?当你在数组/列表中给出重复数据时,我找到了解决方案,即它们还没有被分组到频率表中(例如 d= [1,1,2,3,3,3,6,6,7,7,7,8,8,8,...].但是,在这种情况下我找不到答案.我不想将我的数据转换成单个数据首先扩展列表d并使用直方图功能.

HYR*_*YRY 10

import numpy as np
values = [1,2,3,6,7,8]
freqs = [2,1,3,2,3,3]

hist, _ = np.histogram(values, bins=[1, 4, 7, 10], weights=freqs)
print hist
Run Code Online (Sandbox Code Playgroud)

输出:

[6 2 6]
Run Code Online (Sandbox Code Playgroud)