スペースで区切られた 10 列のデータを含むファイルがあります。私は次のコードを書きました (そしてそれは機能します) が、ここで行っていることを行うためのよりクリーンな方法があると感じています:
#Generate ten separate arrays in which to store the columns
c0 = []; c1 = []; c2 = []; c3 = []; c4 = [];
c5 = []; c6 = []; c7 = []; c8 = []; c9 = [];
#Append each item in each line to its own array
File.open(filename, 'r').each_line do |line|
line = line.strip.split(' ')
c0 << line[0]; c1 << line[1]; c2 << line[2]; c3 << line[3]; c4 << line[4];
c5 << line[5]; c6 << line[6]; c7 << line[7]; c8 << line[8]; c9 << line[9];
end
このタスクを達成するためのメソッドを作成しようとしましたが、基本的にどこから始めればよいかわかりません。n 個の配列を初期化するには、私が行った方法よりもクリーンな方法があると思います...それを行う「ルビー」の方法は何ですか? ここで行っているすべてのことを、10 個の配列を返す単一のメソッドで行うことは可能ですか? これを達成する方法についてのヘルプ/ヒントをいただければ幸いです。