我有以下代码来处理CSV:
CSV.foreach("./matrix1.csv") do |row|
puts "Row is: "
print row
line_count += 1
end
它成功找到了CSV中的行数。但是,如何在一行(行)中找到CSV元素的数量。 例如,我有以下CSV
1,2,3,4,5
我怎样才能看到元素的数量是5?
答案 0 :(得分:1)
如果每行包含相同数量的元素,则:
CSV.open('test.csv', 'r') { |csv| puts csv.first.length }
如果没有则计算每一行:
CSV.foreach('test.csv', 'r') { |row| puts r.length }
答案 1 :(得分:0)
row.size
按照@Stefan
的建议工作但更容易出错的方法是:
CSV.foreach('test.csv','r').max_by(&:length).length
另一种方法是获取当前行的大小:
CSV.foreach('test.csv', 'r') { |row| puts r.length }