module Enumerable
Taken from: stackoverflow.com/questions/7749568/how-can-i-do-standard-deviation-in-ruby
Public Instance Methods
mean()
click to toggle source
# File lib/terragona/stats.rb, line 10 def mean return if self.empty? return self.sum / self.length.to_f end
sample_variance()
click to toggle source
# File lib/terragona/stats.rb, line 15 def sample_variance m = self.mean sum = self.inject(0){|accum, i| accum + (i - m) ** 2 } return sum / (self.length - 1).to_f end
standard_deviation()
click to toggle source
# File lib/terragona/stats.rb, line 21 def standard_deviation return Math.sqrt(self.sample_variance) end
sum()
click to toggle source
# File lib/terragona/stats.rb, line 6 def sum return self.inject(0){|accum, i| accum + i } end