1

私はcsvファイルを持っています。それらを変更した後、その列を別のファイルに書き込みたいです。csvファイルを転置して各行を書き込んでから、結果を再度転置しようとしました。ただし、これには時間がかかりすぎます。

次に、次のようなことを試しました:

my_reader = csv.reader(source, delimiter = delim)
my_writer = csv.writer(destination, delimiter = delim)

for column in zip(*my_reader):
        my_writer.writerows(column) 

for column in zip(*my_reader):
    for k in column:
        my_writer.writerow[k]

最初のケースでは、結果は 4 列の csv ファイルになります (元のテスト ファイルには 100 列以上あるため、理由はわかりません)。

2 番目のケースでは、結果は 1 つの列に書き込まれます。

各列を個別に記述するにはどうすればよいですか?

4

1 に答える 1

1
with open(source) as fin, open(destination, 'w') as fout:
   reader = csv.reader(fin, delimiter=delim)
   writer = csv.writer(fout, delimiter=delim)
   for line in reader:
      line[0] = 42   # manipulate existing the column
      line.append('new column')  # Add a new column
      writer.writerow(line)
于 2013-07-01T10:37:59.717 に答える