我有很多制表符分隔的数据,这些数据被组织成多行,并且应该全部分为两行。现在它看起来像这样:
Some Key Other key Foo Key Bar Key
0 5 18 12
More Key Dor key Gee Key Francis Scott Key
19 14 8 0
Wa Key Whis key Don Key Luh Key
0 2 8 16
我需要它看起来像这样:
Some Key Other key Foo Key Bar Key More Key Dor key Gee Key Francis Scott Key Wa Key Whis key Don Key Luh Key
0 5 18 12 19 14 8 0 0 2 8 16
我有几百个csv文件,每个文件大约有20行,30列,所以我想尽可能地编写脚本。我正在使用Python CSV,但我无法弄清楚如何解释自己。
答案 0 :(得分:3)
这应该这样做:
import csv
import sys
keys = []
values = []
reader = csv.reader(sys.stdin, delimiter="\t")
for row in reader:
keys.extend(row)
values.extend(next(reader))
# skip empty line
assert next(reader, []) == []
writer = csv.writer(sys.stdout, delimiter="\t")
writer.writerow(keys)
writer.writerow(values)
将其另存为thingie.py并使用python thingie.py < sample.csv
运行(其中“sample.csv”是您的数据文件)
答案 1 :(得分:0)
您可以使用选项卡作为分隔符来ssplit文件的内容,将每个int“eger元素放在一个数组中,然后将每个字符串元素放入另一个元素中。然后,你将所有的一行上的字符串(键)由制表符分隔,一行包含由制表符分隔的所有整数。