为 "for" 循环的每次迭代创建新的 df 列
Creating new df columns for each iteration of "for" loop
我正在尝试计算 4 个不同日期的标准普尔行业 diff_chg(在 start_return 中给出):
start_return = [-30,-91,-182,-365]
for date in start_return:
diff_chg = closingprices[-1].divide(closingprices[date])
for i in sectors: #Sectors is XLK, XLY , etc
diff_chg[i] = diff_chg[sectordict[i]].mean() #finds the % chg of all sectors
diff_df = diff_chg.to_frame
我的预期输出是在 df 中有 4 列,每一列都有给定时间段内每个扇区的 returns (-30、-91、-182、-365。)。
截至目前,当我 运行 这段代码时,它 return 是 diff_df 中所有 4 个周期的 return 的总和。我希望它为每个时期在 df 中创建一个新列。
我的代码returns:
XLK 1.859907
XLI 1.477272
XLF 1.603589
XLE 1.415377
XLB 1.526237
但我想要 return:
1mo (-30) 3mo (-61) 6mo (-182) 1yr (-365
XLK 1.086547 values here etc etc
XLI 1.0334
XLF 1.07342
XLE .97829
XLB 1.0281
尝试这样的事情:
start_return = [-30,-91,-182,-365]
diff_chg = pd.DataFrame()
for date in start_return:
diff_chg[date] = closingprices[-1].divide(closingprices[date])
这样做是将每个 date in start_return
的列添加到在开头创建的单个 DataFrame
。
我正在尝试计算 4 个不同日期的标准普尔行业 diff_chg(在 start_return 中给出):
start_return = [-30,-91,-182,-365]
for date in start_return:
diff_chg = closingprices[-1].divide(closingprices[date])
for i in sectors: #Sectors is XLK, XLY , etc
diff_chg[i] = diff_chg[sectordict[i]].mean() #finds the % chg of all sectors
diff_df = diff_chg.to_frame
我的预期输出是在 df 中有 4 列,每一列都有给定时间段内每个扇区的 returns (-30、-91、-182、-365。)。
截至目前,当我 运行 这段代码时,它 return 是 diff_df 中所有 4 个周期的 return 的总和。我希望它为每个时期在 df 中创建一个新列。
我的代码returns:
XLK 1.859907
XLI 1.477272
XLF 1.603589
XLE 1.415377
XLB 1.526237
但我想要 return:
1mo (-30) 3mo (-61) 6mo (-182) 1yr (-365
XLK 1.086547 values here etc etc
XLI 1.0334
XLF 1.07342
XLE .97829
XLB 1.0281
尝试这样的事情:
start_return = [-30,-91,-182,-365]
diff_chg = pd.DataFrame()
for date in start_return:
diff_chg[date] = closingprices[-1].divide(closingprices[date])
这样做是将每个 date in start_return
的列添加到在开头创建的单个 DataFrame
。