Description Usage Arguments Details Author(s) References Examples
Function momentCompound calculates moments of the random variable X.
1 | momentCompound(k,parent,compound,compoundDist,params,...)
|
k |
integer number representing moment's order |
parent |
name of the parent distribution. It can be any continuous distribution supported by R. |
compound |
name of the compound distribution. It can be any discrete distribution supported by this package. |
compoundDist |
list of available compounding distributions |
params |
Parameter or list of parameters of compounding distribution. |
... |
Parameters of continuous distribution could be provided as additional parameters. |
Parameters of the parent distribution must be provided in the same way as it is in built in R functions. See http://127.0.0.1:23174/library/stats/html/Distributions.html
S. Nadarajah, B. V. Popovic, M. M. Ristic
S. Nadarajah, B.V. Popovic, M.M. Ristic (2012) Compounding: an R package for computing continuous distributions obtained by compounding a continuous and a discrete distribution, Computational Statistics, DOI 10.1007/s00180-012-0336-y, http://www.springerlink.com/content/6r464013w6mp3545/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | compoundDist <- c("geometric","poisson","negativebinomial","binomial",
"logarithmic","binomialbinomial","binomialpoisson",
"poissonbinomial","neymantypea","polyaaeppli",
"poissonpascal","pascalpoisson",
"logarithmicbinomial","logarithmicpoisson",
"poissonlindley",
"hyperpoisson","yule","waring","kattitypeh1",
"kattitypeh2","neymantypeb","neymantypec",
"hypergeometric","thomas")
k<-3
parentD<-"beta"
compoundD<-"hypergeometric"
params<-c(3,2,0.5)
momentCompound(k,parentD,compoundD,compoundDist,params,shape1=2,shape2=0.3)
## The function is currently defined as
function(k, parent, compound, compoundDist,params, ...) {
if (!exists(paste("p",parent,sep=""))) {
return(paste("The parent distribution",parent,"doesn't exist"))
}
if (!is.element(compound,compoundDist)) {
return(paste("The discrete distribution",compound,"doesn't exist"))
}
Finv <- get(paste("q", parent, sep = ""), mode = "function")
phi <- get(paste("pgf",compound,sep=""), mode = "function")
phiD <- get(paste("pgfD",compound,sep=""), mode = "function")
fint <- function(x) phiD(1-x,params)*(Finv(x,...))^k/(1-phi(0,params))
return(integrate(fint,lower=0,upper=1)$value)
}
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.