【问题标题】:Python- mean every n values of a coulmnPython-表示一列的每n个值
【发布时间】:2020-06-24 19:40:39
【问题描述】:

只有几个月我开始使用python。因此,在处理大型 CSV 文件(例如 479 行 x 23 列或更大)时,我想计算每 n 个值的特定列的平均值。例如,如果 n=5,则必须为 0-5、5-10、10-15 等计算平均值(不像滚动)。

照片中的数据样本和感兴趣的列是例如“速度”或任何其他。1

我尝试遍历 CSV 或将我想要的列隔离到一个数组中,并尝试了 xrange,但它确实效果不佳。

Any 将不胜感激。 提前谢谢!!!!

【问题讨论】:

  • 提供文本样本数据和预期输出

标签: python pandas numpy average mean


【解决方案1】:

groupby 是你的朋友:

numrows=5

groups = np.arange(len(df))//numrows
df['your_column'].groupby(groups).mean()

【讨论】:

  • 您不必将组转换为 df 列以便在 groupby 括号中引用它,还是 np.arrange 以某种方式直接引用索引?
【解决方案2】:

只要您有一个从 0 开始的索引(您通常会这样做),您就可以执行以下操作:

df.groupby(df.index // 5)['colname'].mean()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-12
    • 1970-01-01
    • 2017-08-22
    • 1970-01-01
    • 2016-06-30
    • 2020-12-08
    • 2015-12-21
    相关资源
    最近更新 更多