Pandas使用For循环将多个数据框架发送到CSV

时间:2017-11-15 01:38:07

标签: python pandas csv for-loop dataframe

我有两个带有价格数据的符号,并成功导入/修改了每个符号/相应DataFrame的价格数据,如下所示:

assets = ['ES','VX']
path = r"C:\Users\cost9\OneDrive\Documents\PYTHON\Exported_Data\%s\*.csv"

files = []
for a in assets:
    files.extend(glob.iglob(path % a))

df_list = [pd.read_csv(f) for f in files]

for b in df_list:
    b['Returns'] = b['Close'].pct_change()

#Do Some stuff to DF, but not relevant to exporting the file 

end_path_to_csv = "C:\\Users\\cost9\\OneDrive\\Documents\\PYTHON\\Daily Tasks\\Individual Trading\\%s\CSV\\15M\\Trend_Identifier\\blah.csv" 

for p, c in zip(assets, df_list):
    c.to_csv(end_path_to_csv % p)

DataFrames看起来应该如此,这里是每个符号的示例:

VX:

Index	Ticker	Date	Close	Returns
0	VX	3/14/17 4:29 AM	16.35	NaN
1	VX	3/14/17 6:29 AM	16.46	0.006728
2	VX	3/14/17 7:29 AM	16.45	-0.000608
3	VX	3/14/17 8:29 AM	16.47	0.001216
4	VX	3/14/17 9:29 AM	16.4	-0.00425

ES:

	Ticker	Date	Close	Returns
0	ES U7	3/14/2017	2365.5	NaN
1	ES U7	3/14/2017	2362.25	-0.001374
2	ES U7	3/14/2017	2355	-0.003069
3	ES U7	3/14/2017	2359.25	0.001805
4	ES U7	3/14/2017	2356	-0.001378

但是,当我检查CSV文件(没有错误)时,'VX'文件夹/文件只有ES数据。因此,从“资产”列表创建的VX数据帧不会按预期发送到该文件夹​​。而是在那里发送ES文件。

我认为这个问题出现在我最后一个针对2部分数据框列表(df_list)的循环引用资产(列表)中。我尝试使用字典将'assets'与'df_list'匹配,但是无法通过这样做来传递for循环。如何让VX DataFrame转到VX文件夹/文件而不是ES去那里?

0 个答案:

没有答案