gpt4 book ai didi

python - 对 pandas 中的数值进行分组

转载 作者:太空宇宙 更新时间:2023-11-03 16:20:58 24 4
gpt4 key购买 nike

在我的Dataframe中,我有一列包含数值,比如说距离。我想找出哪组距离(范围)的记录数(行)最多。

做简单:df.distance.count_values() 返回:

74         1
90 1
94 1
893 1
889 1
885 1
877 1
833 1
122 1
545 1

我想要实现的是像直方图中的桶一样的东西,所以我期待这样的输出:

900         4 #all values < 900 and > 850
100 3
150 1
550 1
850 1

到目前为止,我已经想到的一种方法,但我认为不是最好和最优化的方法,就是找到最大值和最小值,除以我的步长(在本例中为 50),然后进行循环检查所有值并分配给适当的组。

还有其他更好的方法吗?

最佳答案

我建议执行以下操作,假设您的值列标记为 val

import numpy as np
df['bin'] = df['val'].apply(lambda x: 50*np.floor(x/50))

结果如下:

df.groupby('bin')['val'].count()

关于python - 对 pandas 中的数值进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38463019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com