gpt4 book ai didi

python - 计算一组股票的相同移动平均线

转载 作者:太空宇宙 更新时间:2023-11-03 18:13:32 25 4
gpt4 key购买 nike

如果我有一只股票,我将计算移动平均线:

frame = sql.read_frame(...)
frame['ewma'] = ewma(frame['px'], span=15)

因此,如果我有一个充满价格数据的框架,每只股票都有一个系列:

<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 819 entries, 2011-06-30 00:00:00 to 2014-08-19 00:00:00
Freq: B
Data columns (total 10 columns):
StockA 292 non-null values
StockB 303 non-null values
...
dtypes: float64(10)

...我如何使用面板或分层索引一次性最有效地计算框架中所有股票的移动平均线?我还想要其他统计数据,如果这有影响的话......

最佳答案

如果您只需要带有后缀的其他列,则只需指定所需的列名称即可。

ewma_col = [c + '_ewma' for c in df]
df[ewma_col] = df.apply(lambda x: pd.ewma(x, span=15))

如果您想设置 MultiIndex,您可以执行类似的操作,首先设置 MultiIndex,然后添加 ewma 条目。

df.columns = pd.MultiIndex.from_product([df.columns, ['price']])
ewma_col = [(c, 'ewma') for c, _ in df]
df[ewma_col] = df.apply(lambda x: pd.ewma(x, span=15))

关于python - 计算一组股票的相同移动平均线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25420096/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com