Module: Statistics::Percentile

Defined in:
lib/Statistics/Percentile.rb

Class Method Summary collapse

Class Method Details

.of(values, p) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/Statistics/Percentile.rb', line 10

def of(values, p)
  sorted = values.map(&:to_f).sort
  k = (p / 100.0) * (sorted.size - 1)
  lower = sorted[k.floor]
  upper = sorted[k.ceil]
  lower + (upper - lower) * (k - k.floor)
end

.q25(values) ⇒ Object



18
19
20
# File 'lib/Statistics/Percentile.rb', line 18

def q25(values)
  of(values, 25)
end

.q75(values) ⇒ Object



22
23
24
# File 'lib/Statistics/Percentile.rb', line 22

def q75(values)
  of(values, 75)
end