在 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
Jupyter Notebook 中使用 Python 实现指数加权移动平均

原文地址: https://www.cveoy.top/t/topic/jPkA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录