Python 例如,将多个csv导入到一个具有多列的数据框中
我有12个csv文件,我想以列方式导入到数据帧中 例如,每12个csv文件的名称不同,如下所示:Python 例如,将多个csv导入到一个具有多列的数据框中,python,pandas,csv,import,Python,Pandas,Csv,Import,我有12个csv文件,我想以列方式导入到数据帧中 例如,每12个csv文件的名称不同,如下所示: filenames = ['experiment_timesteps_1.csv', 'experiment_timesteps_2.csv', 'experiment_timesteps_3.csv', 'experiment_timesteps_4.csv', 'experiment_time
filenames = ['experiment_timesteps_1.csv',
'experiment_timesteps_2.csv',
'experiment_timesteps_3.csv',
'experiment_timesteps_4.csv',
'experiment_timesteps_5.csv',
'experiment_timesteps_6.csv',
'experiment_timesteps_8.csv',
'experiment_timesteps_10.csv',
'experiment_timesteps_12.csv',
'experiment_timesteps_15.csv',
'experiment_timesteps_18.csv',
'experiment_timesteps_20.csv']
results
266430.1827
318881.2395
285411.9195
279878.2699
272394.9219
239213.2243
274932.4677
290705.0974
315464.9616
240384.0452
results = DataFrame()
for name in filenames:
aux = read_csv(name)
results[name[11:-4]] = aux["results"]
我想在新的数据帧中使用唯一的文件名(从第11个到最后4个)作为列标题。每个文件由一列组成,列数相同,如下所示:
filenames = ['experiment_timesteps_1.csv',
'experiment_timesteps_2.csv',
'experiment_timesteps_3.csv',
'experiment_timesteps_4.csv',
'experiment_timesteps_5.csv',
'experiment_timesteps_6.csv',
'experiment_timesteps_8.csv',
'experiment_timesteps_10.csv',
'experiment_timesteps_12.csv',
'experiment_timesteps_15.csv',
'experiment_timesteps_18.csv',
'experiment_timesteps_20.csv']
results
266430.1827
318881.2395
285411.9195
279878.2699
272394.9219
239213.2243
274932.4677
290705.0974
315464.9616
240384.0452
results = DataFrame()
for name in filenames:
aux = read_csv(name)
results[name[11:-4]] = aux["results"]
我在执行以下代码时遇到错误:
results = DataFrame()
for name in filenames:
results[name[11:-4]] = read_csv(name, header=0)
ValueError:无法设置没有定义索引的帧和无法转换为序列的值如果我理解正确,您可以按如下操作:
filenames = ['experiment_timesteps_1.csv',
'experiment_timesteps_2.csv',
'experiment_timesteps_3.csv',
'experiment_timesteps_4.csv',
'experiment_timesteps_5.csv',
'experiment_timesteps_6.csv',
'experiment_timesteps_8.csv',
'experiment_timesteps_10.csv',
'experiment_timesteps_12.csv',
'experiment_timesteps_15.csv',
'experiment_timesteps_18.csv',
'experiment_timesteps_20.csv']
results
266430.1827
318881.2395
285411.9195
279878.2699
272394.9219
239213.2243
274932.4677
290705.0974
315464.9616
240384.0452
results = DataFrame()
for name in filenames:
aux = read_csv(name)
results[name[11:-4]] = aux["results"]
这将为每个文件生成一列,其中包含您想要的唯一标识符,每个csv的“结果”列将保存在相应的列中