要按列或按年计算移动平均值,可以使用Python中的Pandas库。下面是一个示例代码,演示如何使用Pandas计算按列或按年的移动平均值。
按列计算移动平均值:
import pandas as pd
# 创建一个示例数据框
data = {'A': [1, 2, 3, 4, 5],
'B': [6, 7, 8, 9, 10],
'C': [11, 12, 13, 14, 15]}
df = pd.DataFrame(data)
# 计算按列的移动平均值
moving_avg = df.rolling(window=2, axis=0).mean()
print(moving_avg)
这将输出按列计算的移动平均值:
A B C
0 NaN NaN NaN
1 1.5 6.5 11.5
2 2.5 7.5 12.5
3 3.5 8.5 13.5
4 4.5 9.5 14.5
按年计算移动平均值:
import pandas as pd
# 创建一个示例数据框
data = {'Date': ['2019-01-01', '2019-02-01', '2019-03-01', '2020-01-01', '2020-02-01'],
'Value': [1, 2, 3, 4, 5]}
df = pd.DataFrame(data)
# 将日期列设置为索引
df['Date'] = pd.to_datetime(df['Date'])
df.set_index('Date', inplace=True)
# 计算按年的移动平均值
moving_avg = df['Value'].rolling(window='365D').mean()
print(moving_avg)
这将输出按年计算的移动平均值:
Date
2019-01-01 1.0
2019-02-01 1.5
2019-03-01 2.0
2020-01-01 3.5
2020-02-01 4.5
Name: Value, dtype: float64
请注意,在按年计算移动平均值时,我们首先将日期列转换为日期时间类型,并将其设置为数据框的索引。然后,我们使用rolling
函数的window
参数指定窗口大小为'365D',表示按年计算移动平均值。
上一篇:按列'bins”重新排列矩阵”