2013-05-29

rubyで数値配列の最小値、最大値、平均値、最頻値、中央値を求める

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
rubyの数値配列からいろんな値を求めてみます。

以下の配列があるとします。

a = [1,2,2,3,4,7,9]

最小値
a.min
=>1

最大値
a.max
=>9

平均値
a.inject(0.0){|r,i| r+=i }/a.size
=>4.0
以下、参照
http://d.hatena.ne.jp/unageanu/20080115/1200392571

最頻値
a.max_by {|value| a.count(value)}
=>2
以下、参照
http://www40.atwiki.jp/spellbound/pages/2089.html

中央値
a.size % 2 == 0 ? a[a.size/2 - 1, 2].inject(:+) / 2.0 : a[a.size/2]
=>3
以下、参照
http://www40.atwiki.jp/spellbound/pages/2085.html
コメントを投稿