微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – Pandas:计算每列2行的平均值并将其放入新列中

我想平均列一列,但我希望将平均值放入带有pandas的新列中.

我想从这种格式出发:

values
10
5
8
7
2
5
6
7

对于这种格式:

values  average
10  nan
5   7.5
8   6.5
7   7.5
2   4.5
5   3.5
6   5.5
7   6.5

这里有类似的解决方案:Averaging every two consecutive index values(every 2min) in pandas dataframe,但我希望保持相同的行数.

解决方法:

你可以使用pd.Series.rolling(https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.rolling.html):

data = pd.Series([10, 5, 8, 7, 2, 5, 6, 7])
print(data.rolling(2).mean())

输出

0    NaN
1    7.5
2    6.5
3    7.5
4    4.5
5    3.5
6    5.5
7    6.5
dtype: float64

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐