在Python中如何使用bincount,宽度为0.1?

1 投票
1 回答
957 浏览
提问于 2025-04-18 12:27

我有一个这样的数字列表:[12.414261306701654, 10.52589457006108, 12.398125569114093, 11.900971715356471, 11.566273761189997, 10.31504117886884, 10.235859974871904, 10.25704925592012, 10.296557787801154, 10.19010244226054]

假设我想统计这些数字在区间(10,10.1)(10.1,10.2),...内出现的次数。

我觉得numpy.bincount这个函数只能处理整数的区间宽度。但是如果我把我的数组乘以10,然后使用bincount,那么后面画图的时候,xscale也会偏移10,我不知道怎么才能得到准确的图。

谢谢!

1 个回答

2

看看这个链接:np.histogram

>>> import numpy as np
>>> data = [12.414261306701654, 10.52589457006108, 12.398125569114093, 11.900971715356471, 11.566273761189997, 10.31504117886884, 10.235859974871904, 10.25704925592012, 10.296557787801154, 10.19010244226054]
>>> counts, bin_edges = np.histogram(data, bins=np.arange(10, 12.6, 0.1))
>>> counts
array([0, 1, 3, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
       1, 1])

撰写回答