RubyのArray要素の計算ヘ(^o^)ノ
Arrayの要素を計算したいケースが多々あります。
代表的なものがこれ
[1, 2, 3].inject(:+) # => 6
引数を渡したい!
[1, 2, 3].each_with_object(1).map(&:+) # => [2, 3, 4]
二次元配列で要素ごとの集計
0番目、1番目、3番目の要素を集計しています。
[[1, 2, 3], [4, 5, 6]].transpose.map{|n| n.inject(:+)} # => [5, 7, 9]
Array#transposeは行と列の入れ替えをします。
[[1, 2, 3], [4, 5, 6]].transpose # => [[1, 4], [2, 5], [3, 6]]
Happy Hacking٩( ‘ω’ )و