我有多个csv文件保存了类似的数据,已经导入到dataframe中,每个dataframe的column结构都是相同的,index是日期,但是日期的范围并不完全相同。
现在想从每个文件的dataframe文件中提取其中名称是“R_multiple”的一列,据按照日期的index进行合并。
1.要把同样日期的数据归并到同一行,如果某一列在一个日期里没有数据,就用空值填充。
2. 合并后的列名从“R_multiple”改成下面list 中的元素名。
下面的代码,存在的问题是日期没有完全对应上。而且类名没有改好。
```python
vt_list = ['JM99.DCE', 'I99.DCE', 'HC99.SHFE', 'SF99.CZCE', 'A99.DCE', 'AL99.SHFE', 'B99.DCE',
'BU99.SHFE', 'C99.DCE', 'CF99.CZCE', 'CS99.DCE', 'CU99.SHFE', FG99.CZCE', 'ZN99.SHFE', 'Y99.DCE', 'V99.DCE',
'TA99.CZCE', 'SR99.CZCE', 'SN99.SHFE', 'SM99.CZCE','RU99.SHFE', 'RM99.CZCE', 'RB99.SHFE', 'PP99.DCE',
'PB99.SHFE', 'P99.DCE', 'OI99.CZCE', 'NI99.SHFE', 'MA99.CZCE', 'M99.DCE', 'L99.DCE', 'JD99.DCE', 'J99.DCE',
'AG99.SHFE', 'AU99.SHFE','ZC99.CZCE']
df = pd.DataFrame()
print (df.index)
for symbol in vt_list:
df_symbol = f"{symbol[0:3]}_df"
csv_source = f"PNL for {symbol[0:3]}.csv"
a = pd.read_csv(csv_source, encoding = "gbk")
a.set_index("date",inplace = True)
df = pd.concat([df, a["R_multiple"]],axis=1)