假设我有一个csv文件,每行有4列,如下所示:
712,713,714, 26 blah blah
我想要这样的结果:
712 26 blah blah
713 26 blah blah
714 26 blah blah
现在,我将在python中读取csv文件,但是如何在不更改其他列的情况下拆分行,然后将结果写入另一个csv文件中。
p.s-我不了解熊猫,所以我会使用简单的csv模块
答案 0 :(得分:0)
直接使用csv.reader
和csv.writer
对象:
示例test.csv
:
712,713,714, 26 blah blah
1,2,3, 11 aaa bbb
import csv
inp_fname = 'test.csv'
out_fname = 'transposed.csv'
with open(inp_fname, 'r', newline='') as in_csvfile, \
open(out_fname, 'w', newline='') as out_csvfile:
reader = csv.reader(in_csvfile, delimiter=' ', skipinitialspace=True)
writer = csv.writer(out_csvfile, delimiter='\t')
for row in reader:
for v in row[0].rstrip(',').split(','):
writer.writerow([v] + row[1:])
最后transposed.csv
个文件的内容:
712 26 blah blah
713 26 blah blah
714 26 blah blah
1 11 aaa bbb
2 11 aaa bbb
3 11 aaa bbb