问题描述
有人可以帮我解决这个问题吗? 我不确定如何解决此问题。 我有10个不同的csv文件。 每个文件包含不同数量的列。 每列包含一个标题和数据。 我想从不同的csv文件中复制选择性的列,并按特定顺序在新文件中进行布局。 例如,来自文件1的第1,5,6列,来自文件2的第1,2,3列,来自文件3的第8列以创建一个包含7个相应格式的列的文件:
column1(file1) column1(file2) column2(file2) column3(file2) column5(file1) column8(file3) column6(file1)
我该如何编码?
1楼
这未经测试,但应该使您走上正确的道路:
import csv
import itertools
FILES = ['file1.csv', 'file2.csv', 'file3.csv', ...]
with open('output', 'wb') as output:
input_files = [ csv.reader(open(fname, 'rb')) for fname in FILES ]
writer = csv.writer(output)
for row in itertools.izip(*input_files):
writer.writerow([
# format is row[file#-1][column#-1]
row[0][0],
row[1][0],
row[1][1],
row[1][2],
row[0][4],
row[2][7],
row[0][5],
])