[英]Pandas filtering floating point to digit
我正在使用 Pandas 来分析我的数据。 我有这个由 elapsed_seconds 和 m(magnitude) 组成的数据框。 有没有办法让我按浮点数(elapsed_seconds)的五位数字分组并找到 m 的平均值?
例子:
elapsed_seconds,m
10769.001,0.373637934043
10769.027,0.373403294813
10769.041,0.373069383556
10769.061,0.391354911476
10769.081,0.381280413801
我需要的是:
elapsed_seconds,m
10769,0.3785491875378
0.3785491875378 是 0.373637934043,0.373403294813,0.373069383556,0.391354911476 和 0.381280413801 的平均值
我将感谢所有反馈和评论。 谢谢你。
您可以将float
列转换为int
然后groupby
和聚合mean
:
df = df.groupby(df['elapsed_seconds'].astype(int))['m'].mean().reset_index()
print (df)
elapsed_seconds m
0 10769 0.378549
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.