行と列の「ヘッダー」情報(テーブルなど)を含むCSVファイルに2D配列を保存したいと思います。numpy.savetxtのヘッダー引数を使用して列名を保存できることは知っていますが、データの最初の列(行のタイトルなど)として他の配列(またはリスト)を含める簡単な方法はありますか?
以下は私が現在それを行う方法の例です。それらの行のタイトルを含めるためのより良い方法はありますか、おそらく私が知らないsavetxtのトリックですか?
import csv
import numpy as np
data = np.arange(12).reshape(3,4)
# Add a '' for the first column because the row titles go there...
cols = ['', 'col1', 'col2', 'col3', 'col4']
rows = ['row1', 'row2', 'row3']
with open('test.csv', 'wb') as f:
writer = csv.writer(f)
writer.writerow(cols)
for row_title, data_row in zip(rows, data):
writer.writerow([row_title] + data_row.tolist())