Pandas分组如何计算范围内的计数

2024-10-06 11:29:40 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一个0到100之间的庞大数字列表。 我根据最大值计算范围,然后说有10个箱子。 所以我的范围是

ranges = [0,10,20,30,40,50,60,70,80,90,100]

现在我计算了从0到10,从10到20,等等。 我遍历列表中的每个数字并检查范围。 就运行时速度而言,我认为这不是最好的方法。

我可以用熊猫来固定它吗?比如熊猫。群居,怎么固定?


Tags: 方法列表数字速度ranges箱子群居
1条回答
网友
1楼 · 发布于 2024-10-06 11:29:40

我们可以使用^{}将值放入范围,然后可以^{}这些范围,最后调用^{}来计算现在放入这些范围的值:

In [82]:

df = pd.DataFrame({"a": np.random.random_integers(0, high=100, size=100)})
ranges = [0,10,20,30,40,50,60,70,80,90,100]
df.groupby(pd.cut(df.a, ranges)).count()
Out[82]:
            a
a            
(0, 10]    10
(10, 20]    6
(20, 30]   12
(30, 40]    9
(40, 50]   11
(50, 60]   12
(60, 70]    9
(70, 80]   13
(80, 90]    9
(90, 100]   9

相关问题 更多 >