2014-03-03 29 views
0

我處理CSV,並將所得的散列我創造這個樣子的......之後紅寶石如何引用嵌套哈希處理CSV

["709267", {"first_name"=>["Mista", "Mista", "Mista", "Mista"], 
      "last_name"=>["Ainsley", "Ainsley", "Ainsley", "Ainsley"], 
      "start_dates"=>[Mon, 19 Aug 2013, Mon, 19 Aug 2013, Mon, 19 Aug 2013, Mon, 19 Aug 2013], 
      "end_dates"=>["12/14/2013", "12/14/2013", "12/14/2013", "12/14/2013"],   
      "last_attend_dates"=>[nil, "8/29/2013", nil, nil], 
      "final_grades"=>["B", "W", "A", "D"]}] 

所以現在我要顯示的結果這個。現在我只是在控制檯中做這件事。用...

students.each do |s| 
    puts s.inspect 
end 

我試圖通過調用每個信息的哈希名稱有點更有序。所以想做類似...

students.each do |s| 
    puts s['first_name'].inspect + "," + "Earliest Start Date:" + s[start_date].min.inspectt 
end 

但我沒有任何運氣。什麼是我應該使用的正確語法?

回答

0

這是你在找什麼?

students.each do |s| 
    puts s[1]['first_name'].first + "," + "Earliest Start Date:" + s[1]['start_dates'].sort_by(&:to_date).first 
end 

上面的代碼將輸出

Mista,Earliest Start Date: Mon, 19 Aug 2013 
+0

是的!有了一個addtion,可以像s [1] ['first_name']那樣在每個數組中添加[1]。在你的答案中做出改變,我會接受,除非你認爲有更清晰的方法? – Lumbee