class StatisticalMethods::SummaryStatistic::Location::Median

Public Class Methods

new(array) click to toggle source
# File lib/statistical_methods/summary_statistic/location/median.rb, line 5
def initialize(array)
  @array = array
  @sorted = @array.sort
  @number = @array.size
end

Public Instance Methods

find() click to toggle source
# File lib/statistical_methods/summary_statistic/location/median.rb, line 11
def find
  return if @array.empty?
  upper = @number / 2
  lower = @number.odd? ? upper : upper - 1
  (@sorted[lower] + @sorted[upper]) / 2.0
end