【发布时间】:2019-11-09 17:27:09
【问题描述】:
我目前正在尝试计算几只股票数据集的简单移动平均线。为了简单起见,我只在两家公司(和 4 天的时间)上尝试了代码以使其正常工作,但输出似乎存在一些问题。下面是我的代码。
for index, row in df3.iloc[4:].iterrows():
if df3.loc[index,'CompanyId'] == df3.loc[index-4,'CompanyId']:
df3['SMA4'] = df3.iloc[:,1].rolling(window=4).mean()
else:
df3['SMA4'] = 0
这是输出:Output
数据框按日期和公司 ID 排序。所以需要发生的是,当公司 id 不等于代码中所述时,输出应该为零,因为我无法计算两个不同公司的移动平均值。相反,它会输出两家公司的移动平均线,如第 7、8、9 行。
【问题讨论】:
标签: python pandas dataframe output moving-average