class StatiStica::StandardDeviation

Public Class Methods

new(sample) click to toggle source
# File lib/stati_stica/standard_deviation.rb, line 5
def initialize(sample)
  raise ArgumentError if sample.empty?
  @sample = sample.map { |s| Float(s) }
end

Public Instance Methods

value() click to toggle source
# File lib/stati_stica/standard_deviation.rb, line 10
def value
  mean = StatiStica::Mean.new(@sample).value
  variance = @sample.inject(0) { |sum, element| sum + (element - mean) ** 2 } / (@sample.size - 1)
  Math.sqrt(variance)
end