这是我目前的代码,但我不确定是否应该在计算标准差和平均值之后立即合并数据框。我当前遇到的问题是选择具有大于/小于平均值加上/减去标准差的值的行。我不知道如何逐列迭代并执行此操作?我考虑了for循环,但不太确定如何进行。
import pandas_datareader.data as web
import datetime as date
fromDate ="2014-01-02"
toDate = "2016-01-02"
dfSixMo = web.DataReader('DGS6MO','fred',fromDate,toDate)
dfOneYear = web.DataReader('DGS1','fred',fromDate,toDate)
dfFiveYear = web.DataReader('DGS5','fred',fromDate,toDate)
dfTenYear = web.DataReader('DGS10','fred',fromDate,toDate)
dfJoin1 = dfSixMo.join(dfOneYear,how = 'inner')
dfJoin2 = dfFiveYear.join(dfTenYear,how='inner')
dfFinal = dfJoin1.join(dfJoin2,how='inner')
print(dfFinal)
mean = dfFinal.mean()
print('\nMean:')
print(mean)
StDev = dfFinal.std()
print('\n Standard Deviation:')
print(StDev)
df.stack().std()
。同样地,df.stack().mean()
可以用来计算平均值。 - Joe Ferndzdf.values.std(ddof=1)
。更多信息请参见此处。 - Joe Ferndz