Sha256: acc69ebc74d2dfea8dea5139269d5c121e0771b9459fb36e5a6bac687df2112a

Contents?: true

Size: 386 Bytes

Versions: 2

Compression:

Stored size: 386 Bytes

Contents

class Array
  def percentile(p)
    if p < 0 || p > 100
      nil
    else
      self.sort[((p.to_f / 100.0) * self.length.to_f) - 0.5]
    end
  end

  def interquartile_range
    self.percentile(75) - self.percentile(25)
  end

  def iqr
    self.interquartile_range
  end

  def midspread
    self.interquartile_range
  end

  def middle_fifty
    self.interquartile_range
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rstat-0.1.2 lib/rstat/core_ext/array/descriptive_statistics/dispersion/percentile.rb
rstat-0.1.1 lib/rstat/core_ext/array/descriptive_statistics/dispersion/percentile.rb