我需要导入一个巨大的csv数据文件(6880列),我需要能够使用列标题来访问它。
最好的方法是什么?
速度并不重要。清晰度是。
答案 0 :(得分:7)
FasterCSV(也available as CSV in Ruby 1.9 standard library)应该可以做到这一点。您可以使用列标题来访问行的数据:
require 'fastercsv'
FasterCSV.foreach(csv_file, {:headers => true, :return_headers => false, :header_converters => :symbol, :converters => :all} ) do |row|
puts row[:some_column_header] # Would be "Some Column Header" in the csv file.
end