class Statistics::Distribution::Beta
Attributes
alpha[RW]
beta[RW]
Public Class Methods
new(alp, bet)
click to toggle source
# File lib/statistics/distribution/beta.rb, line 6 def initialize(alp, bet) self.alpha = alp.to_r self.beta = bet.to_r end
Public Instance Methods
cumulative_function(value)
click to toggle source
# File lib/statistics/distribution/beta.rb, line 11 def cumulative_function(value) Math.incomplete_beta_function(value, alpha, beta) end
density_function(value)
click to toggle source
# File lib/statistics/distribution/beta.rb, line 15 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
mean()
click to toggle source
# File lib/statistics/distribution/beta.rb, line 30 def mean return if alpha + beta == 0 alpha / (alpha + beta) end
mode()
click to toggle source
# File lib/statistics/distribution/beta.rb, line 24 def mode return unless alpha > 1 && beta > 1 (alpha - 1)/(alpha + beta - 2) end