0
我有一個哈希看起來像這樣:比較哈希散列和紅寶石返回特定鍵的最低值
h = { "C6"=>
{ "G1"=>{"term_difference"=>15.1, "spread"=>7.6 },
"G2"=>{"term_difference"=>13.7, "spread"=>7.0 },
"G3"=>{"term_difference"=>8.2, "spread"=>6.0 },
"G4"=>{"term_difference"=>4.0, "spread"=>3.8 },
"G5"=>{"term_difference"=>0.9, "spread"=>1.8 }
}
}
我需要做的是返回一個哈希看起來像這樣:
{ "C6"=>
{
"G5"=>{"term_difference"=>0.9, "spread"=>1.8}
}
}
結果是具有最低term_difference
值的散列。
我一直在試圖弄清楚這一點,但似乎無法破解它。
任何幫助將不勝感激!
更一般地說:'Hash [h.map {| k,v | [k,[v.min_by {| _,v | v [「term_difference」]}]。to_h]}]' – Amadan
注意:'#to_h'可用於Ruby 2.x或更高版本。 – Surya
@Surya,是的。我經常提到這幾年,直到它變得太麻煩。 :-) –