我有一个名为rollStocks的pandas数据框:
roll_418_oe_2015-03-13, roll_419_oe_2015-03-20, roll_420_oe_2015-03-27
0, BBG.XWBO.VIG.S, BBG.XWBO.VIG.S, BBG.XPAR.ACA.S,
1, BBG.XPAR.ACA.S, BBG.XPAR.ACA.S, BBG.XSTO.LUPE.S,
2, BBG.XSWX.ALPH.S, BBG.XSWX.ALPH.S, BBG.XSWX.ALPH.S,
3, BBG.XCSE.MAERSKB.S, BBG.XCSE.MAERSKB.S, BBG.XCSE.MAERSKB.S,
4, BBG.XBRU.GBLB.S, BBG.XBRU.GBLB.S, BBG.XSWX.SPSN.S,
5, BBG.XPAR.IPN.S, BBG.XLIS.EDPR.S, BBG.XBRU.GBLB.S,
6, BBG.XLON.BNZL.S, BBG.XPAR.GFC.S, BBG.XLON.BNZL.S,
我需要迭代每列(一次一列),获取列中的每个条目,并从与条目名称相同的文件中检索时间序列数据,并将此数据输入另一个数据帧,然后我将在一个过程中使用。第一列完成后,我将转到rollStocks数据帧的下一列并执行相同的操作,直到我到达rollStocks数据帧的末尾。
有人可以告诉我如何遍历rollStocks数据框中的每一列以获取列中的每个项目,从而允许我获取列中每个项目的时间序列并处理该数据,然后再转到下一个rollStocks列上?
我试过了
for colEntry in rollStocks.columns:
colStock = rollStocks.loc[:,colEntry]
但这只是遍历整个数据框中的所有列,而不允许我一次处理一列数据。
答案 0 :(得分:1)
如果你想处理df中的每个元素来读取csv,那么以下内容应该有效:
for col in rollStocks:
for row in rollStocks[col]:
colSock = pd.read_csv(row)
或者,您可以拨打applymap
:
rollStocks.applymap(pd.read_csv)
以上假设默认参数和路径是可接受的