【发布时间】:2020-05-31 20:53:20
【问题描述】:
我正在尝试从名为 data 的数据框中计算股票数据的 20 天简单移动平均线
这些是数据框的列名:
1. open 2. high 3. low 4. close 5. SMA
我希望 SMA 中的每个值都是 4. close 中过去 20 个值的平均值
我尝试使用
data['5. SMA'] = np.average(data['4. close'][:21])
但它仅在整个数据列中返回一个值(这是可以理解的,因为代码仅适用于前 20 个值)。但是,对于5. SMA 中的每一行,我想使用4. close 中过去的20 个值。
我如何使用 numpy 或 pandas 来实现它?
【问题讨论】:
-
试试
df.rolling是什么意思?