![](/img/trans.png)
[英]selecting two columns from multiple files and want to merge those column - column wise into one file
[英]Select specific column from multiple csv files, then merge those columns into single file using pandas
我正在尝试 select 来自多个 csv 文件的特定列,其中 header "Average"
。 然后从这些多个 csv 文件中的每一个中取出"Average"
列,并将它们合并到一个新的 csv 文件中。
我在评论中留下了评论,以展示我尝试实现此目标的其他方式:
procdir = r"C:\Users\ChromePnP\Desktop\exchange\processed"
collected = os.listdir(procdir)
flist = list(collected)
flist.sort()
#exclude first files in list
rest_of_files = flist[1:]
for f in rest_of_files:
get_averages = pd.read_csv(f, usecols = ['Average'])
#df1 = pd.DataFrame(f)
# df2 = pd.DataFrame(rundata_file)
#get_averages = pd.read_csv(f)
#for col in ['Average']:
#get_averages[col].to_csv(f_template)
got_averages = pd.merge(get_averages, right_on = 'Average')
got_averages.to_csv("testfile.csv", index=False)
编辑:
我能够得到我想要的专栏,它们将被打印出来。 但是现在保存的文件只有一个来自循环的平均列,而不是保存在循环中选择的所有列。
rest_of_files = flist[1:]
#f.sort()
print(rest_of_files)
for f in rest_of_files:
get_averages = pd.read_csv(f)
df1 = pd.DataFrame(get_averages)
got_averages = df1.loc[:, ['Average']]
print(got_averages)
f2_temp = pd.read_csv(rundata_file)
df2 = pd.DataFrame(f2_temp)
merge_averages = pd.concat([df2, got_averages], axis=1)
merge_averages.to_csv(rundata_file, index=False)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.