rubyでは配列を,transpose メソッドで行列の入れ替えを行うことが可能みたい.
Stataでの作業中にする必要が出てきたのですが,Stataのxposeコマンドが遅すぎて使い物にならなかった.代替案としてExcelに読み込ませて「行列を入れ替えた貼り付け」を繰り返そうかと思ったのですが,1000x100万以内にセル数が収まらなかったので断念.

rubyでできないか探したら上のメソッドが出てきた.

a=CSV.readlines("c:/data.csv") 
a.each{ |row| 
	arr << row
}
arr_tr = arr.transpose
p "now saving"

CSV.open("C:/out_data_transposed.csv","w"){ |writer|
	arr_tr.each {|row|
		writer<< row
	}
}