Skip to contents

The function will fit the Beta-Binomial distribution when random variables, corresponding frequencies and shape parameters are given. It will provide the expected frequencies, chi-squared test statistics value, p value, degree of freedom and over dispersion value so that it can be seen if this distribution fits the data.

Usage

fitBetaBin(x,obs.freq,a,b)

Arguments

x

vector of binomial random variables.

obs.freq

vector of frequencies.

a

single value for shape parameter alpha representing as a.

b

single value for shape parameter beta representing as b.

Value

The output of fitBetaBin gives the class format fitBB and fit consisting a list

bin.ran.var binomial random variables.

obs.freq corresponding observed frequencies.

exp.freq corresponding expected frequencies.

statistic chi-squared test statistics.

df degree of freedom.

p.value probability value by chi-squared test statistic.

fitBB fitted values of dBetaBin.

NegLL Negative Log Likelihood value.

a estimated value for alpha parameter as a.

b estimated value for alpha parameter as b.

AIC AIC value.

over.dis.para over dispersion value.

call the inputs of the function.

Methods summary, print, AIC, residuals and fitted can be used to extract specific outputs.

Details

$$0 < a,b$$ $$x = 0,1,2,...,n$$ $$obs.freq \ge 0$$

NOTE : If input parameters are not in given domain conditions necessary error messages will be provided to go further.

References

Young-Xu, Y. & Chan, K.A., 2008. Pooling overdispersed binomial data to estimate event rate. BMC medical research methodology, 8(1), p.58.

Available at: doi: 10.1186/1471-2288-8-58 .

Trenkler, G., 1996. Continuous univariate distributions. Computational Statistics & Data Analysis, 21(1), p.119.

Hughes, G., 1993. Using the Beta-Binomial Distribution to Describe Aggregated Patterns of Disease Incidence. Phytopathology, 83(9), p.759.

Available at: doi: 10.1094/PHYTO-83-759

See also

Examples

No.D.D <- 0:7    #assigning the random variables
Obs.fre.1 <- c(47,54,43,40,40,41,39,95)  #assigning the corresponding frequencies

#estimating the parameters using maximum log likelihood value and assigning it
parameters <- EstMLEBetaBin(No.D.D,Obs.fre.1,0.1,0.1)

bbmle::coef(parameters)   #extracting the parameters a and b
#>         a         b 
#> 0.7229420 0.5808483 
aBetaBin <- bbmle::coef(parameters)[1]  #assigning the parameter a
bBetaBin <- bbmle::coef(parameters)[2]  #assigning the parameter b

#fitting when the random variable,frequencies,shape parameter values are given.
fitBetaBin(No.D.D,Obs.fre.1,aBetaBin,bBetaBin)
#> Call: 
#> fitBetaBin(x = No.D.D, obs.freq = Obs.fre.1, a = aBetaBin, b = bBetaBin)
#> 
#> Chi-squared test for Beta-Binomial Distribution 
#> 	
#>           Observed Frequency :  47 54 43 40 40 41 39 95 
#> 	
#>           expected Frequency :  54.62 42 38.9 38.54 40.07 44 53.09 87.78 
#> 	
#>           estimated a parameter : 0.722942   ,estimated b parameter : 0.5808483 
#> 	
#>           X-squared : 9.5171   ,df : 5   ,p-value : 0.0901 
#> 	
#>           over dispersion : 0.4340673 

#estimating the parameters using moment generating function methods
results <- EstMGFBetaBin(No.D.D,Obs.fre.1)
results
#> Call: 
#> EstMGFBetaBin(x = No.D.D, freq = Obs.fre.1)
#> 
#> Coefficients: 
#>         a         b 
#> 0.7161628 0.5963324 

aBetaBin1 <- results$a  #assigning the estimated a
bBetaBin1 <- results$b  #assigning the estimated b

#fitting when the random variable,frequencies,shape parameter values are given.
BB <- fitBetaBin(No.D.D,Obs.fre.1,aBetaBin1,bBetaBin1)

#extracting the expected frequencies
fitted(BB)
#> [1] 56.60 43.01 39.57 38.97 40.27 43.89 52.39 84.29

#extracting the residuals
residuals(BB)
#> [1]  -9.60  10.99   3.43   1.03  -0.27  -2.89 -13.39  10.71