繁体   English   中英

如何分组数据和创建箱?

[英]How to group data and create bins?

我有以下DataFrame df(给出了一个小摘录):

time_diff   avg_qty_per_day
1.450000    1.0
1.483333    1.0
1.500000    1.0
2.516667    1.0
2.533333    1.0
2.533333    1.5
3.633333    1.8
3.644567    5.0

如何将其分组到垃圾箱中以获得以下结果?:

1   3
2   3.5
3   6.8

料斗的大小应该是可配置的。

我认为您需要cut

bins = [-np.inf, 2, 3, np.inf]
labels=[1,2,3]
df = df['avg_qty_per_day'].groupby(pd.cut(df['time_diff'], bins=bins, labels=labels)).sum()
print (df)
time_diff
1    3.0
2    3.5
3    6.8
Name: avg_qty_per_day, dtype: float64

如果要检查标签:

bins = [-np.inf, 2, 3, np.inf]
labels=[1,2,3]
df['label'] = pd.cut(df['time_diff'], bins=bins, labels=labels)
print (df)
   time_diff  avg_qty_per_day label
0   1.450000              1.0     1
1   1.483333              1.0     1
2   1.500000              1.0     1
3   2.516667              1.0     2
4   2.533333              1.0     2
5   2.533333              1.5     2
6   3.633333              1.8     3
7   3.644567              5.0     3

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM