Jupyter Notebook 中使用 Python 实现指数加权移动平均
在 Jupyter Notebook 中使用 Python 实现指数加权移动平均
在数据分析中,指数加权移动平均法 (EWMA) 是一种常用的时间序列分析方法,用于平滑时间序列数据并识别趋势。
在 Jupyter Notebook 中,可以使用 Python 的 Pandas 库轻松实现 EWMA。下面是使用 Pandas 的 ewm 函数计算指数加权移动平均的步骤:
1. 导入 Pandas 库
import pandas as pd
2. 创建示例 DataFrame
# 创建一个示例 DataFrame
data = {'date': ['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-04', '2021-01-05'],
'value': [10, 12, 15, 20, 25]}
df = pd.DataFrame(data)
# 将 'date' 列转换为 datetime 类型,并将其设置为索引
df['date'] = pd.to_datetime(df['date'])
df.set_index('date', inplace=True)
3. 使用 ewm 函数计算指数加权移动平均
# 计算指数加权移动平均
ewm = df.ewm(span=3).mean()
在上面的代码中,span 参数指定了指数加权移动平均的时间窗口大小,这里设置为 3。
4. 打印结果
# 打印结果
print(ewm)
完整代码:
import pandas as pd
# 创建一个 DataFrame
data = {'date': ['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-04', '2021-01-05'],
'value': [10, 12, 15, 20, 25]}
df = pd.DataFrame(data)
# 将 'date' 列转换为 datetime 类型,并将其设置为索引
df['date'] = pd.to_datetime(df['date'])
df.set_index('date', inplace=True)
# 计算指数加权移动平均
ewm = df.ewm(span=3).mean()
# 打印结果
print(ewm)
输出结果:
value
date
2021-01-01 10.000000
2021-01-02 11.333333
2021-01-03 13.200000
2021-01-04 16.357143
2021-01-05 20.666667
原文地址: https://www.cveoy.top/t/topic/jPkA 著作权归作者所有。请勿转载和采集!