Python 2.7 在Python中附加具有文件名的CSV文件
我有一个包含多个CSV文件的目录,其中包含外汇定价历史记录:Python 2.7 在Python中附加具有文件名的CSV文件,python-2.7,append,filenames,concat,Python 2.7,Append,Filenames,Concat,我有一个包含多个CSV文件的目录,其中包含外汇定价历史记录: hist_EUR_CHF.csv hist_EUR_JPY.csv hist_EUR_USD.csv etc..... 我使用以下脚本将所有csv文件合并到一个文件中: import pandas as pd import os files = [f for f in os.listdir('.') if os.path.isfile(f)] merged = [] for f in files: filename, ext
hist_EUR_CHF.csv
hist_EUR_JPY.csv
hist_EUR_USD.csv
etc.....
我使用以下脚本将所有csv文件合并到一个文件中:
import pandas as pd
import os
files = [f for f in os.listdir('.') if os.path.isfile(f)]
merged = []
for f in files:
filename, ext = os.path.splitext(f)
if ext == '.csv':
read = pd.read_csv(f)
merged.append(read)
result = pd.concat(merged)
result.to_csv('_FX_historical.csv')
组合csv文件现在包含日期、打开、高、低和关闭:
Date Open High Low Close
2018-01-06 1.2032 1.2106 1.1988 1.2033
2018-01-07 1.2041 1.2067 1.2031 1.2044
2018-01-06 93.9023 94.0105 93.8832 93.9024
2018-01-07 93.9671 93.9934 93.9104 93.9672
我想添加两列来标识数据所表示的外汇对
如何附加文件以添加两列:从列和到列
我的新文件将为:
Date Open High Low Close From To
2018-01-06 1.2032 1.2106 1.1988 1.2033 EUR USD
2018-01-07 1.2041 1.2067 1.2031 1.2044 EUR USD
2018-01-06 93.9023 94.0105 93.8832 93.9024 EUR JPY
2018-01-07 93.9671 93.9934 93.9104 93.9672 EUR JPY
您可以对第二列执行相同的操作
fromP = ['EUR2','EUR2','EUR2','EUR2']
with open('_FX_historical.csv','r') as csvinput:
with open('a2.csv', 'w') as csvoutput:
writer = csv.writer(csvoutput, lineterminator='\n')
reader = csv.reader(csvinput)
all = []
row = next(reader)
row.append('From')
all.append(row)
i=0
for row in reader:
row.append(fromP[i])
all.append(row)
i=i+1
writer.writerows(all)
Naj meh,我的目录中有很多文件每天都在动态变化。有没有一种方法可以自动附加“发件人”名称而不是硬编码它们?