我有一个TSV / CSV数据集(超过100gb),我需要将数据集拆分为列数据集。例如:n行和m列的输入数据集需要输出m个数据集,每个数据集包含一行n行。
输入1数据集
a b c
x y z
1 v a
输出3数据集
dataset1 : a x 1
dataset2 : b y v
dataset3 : c z a
答案 0 :(得分:1)
基本原则是
m
m
个文件进行编写i
个文件i
值
一个实现示例是:
import csv
with open('input.csv', 'r') as f:
csvreader = csv.reader(f)
files = [open("output" + str(i), 'w') for i in range(len(csvreader.next()))]
f.seek(0)
for line in csvreader:
for i, value in enumerate(line):
files[i].write(value)
files[i].write(' ')