в программе на Ruby у меня есть хеш, в котором ключами являются нормальные строки, а значения - это массив чисел:
hash_1 = {"Luke"=> [2,3,4], "Mark"=>[3,5], "Jack"=>[2]}
И в результате я получаю такой же хеш сзначения, которые становятся средними числами внутри массивов:
{"Luke"=> 3, "Mark"=>4, "Jack"=>2}
Один из способов заставить его работать - это создать новый пустой hash_2, перебрать hash_1 и в пределах блока назначить ключи hash_2. и среднее число чисел в виде значений.
hash_2 = {}
hash_1.each do |key, value|
hash_2[key] = value.sum / value.count
end
hash_2 = {"Luke"=> 3, "Mark"=>4, "Jack"=>2}
Есть ли лучший способ, которым я мог бы сделать это, например, без необходимости создавать новый хэш?