📜  python 移动平均 pandas - Python (1)

📅  最后修改于: 2023-12-03 14:46:17.401000             🧑  作者: Mango

Python中使用Pandas进行移动平均计算

简介

移动平均是一种常见的数据预处理技术,可以在一定程度上平滑时间序列数据。而Pandas是Python中常用的数据分析库,可以方便地进行数据处理和分析。

在本文中,我们将介绍如何使用Pandas进行移动平均计算。

Pandas中的移动平均函数

Pandas提供了rolling函数用于计算移动平均。该函数的语法如下:

DataFrame.rolling(window, min_periods=None, center=False, win_type=None, on=None, axis=0, closed=None)

其中:

  • window:表示滑动窗口大小,即取几个数据进行平均计算。
  • min_periods:表示最少需要几个数据才能进行计算。
  • center:表示是否以窗口中心点进行计算。
  • win_type:表示窗口类型,例如'hamming'等。
  • on:表示按照哪个列进行计算。
  • axis:表示计算的方向,0表示计算每列的移动平均,1表示计算每行的移动平均。
  • closed:表示窗口的开闭情况,None表示左闭右开。

下面是一个例子:

import pandas as pd

# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3, 4, 5],
                   'B': [2, 4, 6, 8, 10]})
                   
# 计算每列的滑动窗口移动平均
rolling_mean = df.rolling(window=2).mean()

print(rolling_mean)

输出结果为:

     A    B
0  NaN  NaN
1  1.5  3.0
2  2.5  5.0
3  3.5  7.0
4  4.5  9.0
示例

下面是一个完整的示例代码,通过读取CSV文件数据,计算每列的滑动窗口移动平均,然后将结果保存到新的CSV文件中:

import pandas as pd

# 读取CSV文件
df = pd.read_csv('data.csv')

# 计算每列的滑动窗口移动平均
rolling_mean = df.rolling(window=2).mean()

# 将结果保存到CSV文件中
rolling_mean.to_csv('rolling_mean.csv', index=False)
结论

使用Pandas进行移动平均计算非常方便,可以大大提高数据处理效率。如果您需要处理一些时间序列数据,不妨试试Pandas中的移动平均函数,相信会给您带来很多的帮助。