RubyのArrayに平均値のメソッドを追加
研究でRubyを使って実装をしていて,Arrayクラスに平均値を求めるメソッドがなくて驚いた.
(Rubyは何でもあると思っていた.)
凄く簡単に実現できそうだったので,自分でやってみた.
実装
オーソドックスに配列自身の要素の和を求めて,要素数で割り実数で返す.
class Array def average total = 0.0 self.each do |item| total += item end total / self.size end end
問題点
配列に文字列など,数字以外の要素が含まれている場合にエラーを吐く.
数字以外の場合は0を返す,混在している場合は数字のみの平均を返す,とかした方が良いのかな.
今回は用途が限定されてたので,例外処理は放置.