私はCSVファイルから始めました。これをCSV::Table、104列に読み込み、3つにフィルターしたいと思いました。
filtered_data = csv.map { |row| row.fields(:x,:y:,:z) }
x
次に、エポック時間から通常のGMTに変換したいと思います。私はこれを使用して行いました:
filtered_data.each do |thing|
thing[0] = Time.at(thing[0]).to_datetime
end
したがって、次のようになります。
[[converted_x, y,z],[converted_x, y, z]]
map関数を使用してこれを行う別の方法はありますか、それともこれが推奨される解決策ですか?
ジェレミーの答えを使用して、私は今持っています:
filtered_data.map { |x,y,z| [Time.at(x).to_datetime,y,z] }
そして、rejectを使用してさらにフィルタリングします。
filtered_data.reject { |x,y,z| [x,y, z == '\\ '] }