momentCompound {Compounding} R Documentation

## function momentCompound

### Description

Function momentCompound calculates moments of the random variable X.

### Usage

```momentCompound(k,parent,compound,compoundDist,params,...)
```

### Arguments

 `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.

### Details

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

### Author(s)

S. Nadarajah, B. V. Popovic, M. M. Ristic

### References

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/

### Examples

```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)
}

```

[Package Compounding version 1.0.2 Index]