Sha256: 71dc1dcb9ce7b262bd2aae39a4b2f526a70b2bb02e91a18605dee4b5873819fc
Contents?: true
Size: 781 Bytes
Versions: 9
Compression:
Stored size: 781 Bytes
Contents
module Statistics module Distribution class Beta attr_accessor :alpha, :beta def initialize(alp, bet) self.alpha = alp.to_f self.beta = bet.to_f end def cumulative_function(value) Math.incomplete_beta_function(value, alpha, beta) end def density_function(value) return 0 if value < 0 || value > 1 # Density function defined in the [0,1] interval num = (value**(alpha - 1)) * ((1 - value)**(beta - 1)) den = Math.beta_function(alpha, beta) num/den end def mode return unless alpha > 1 && beta > 1 (alpha - 1)/(alpha + beta - 2) end def mean return if alpha + beta == 0 alpha / (alpha + beta) end end end end
Version data entries
9 entries across 9 versions & 1 rubygems