Learn R Programming

PoweR (version 1.0.7)

law0039.modifiedAsymmetricPowerDistribution: The modified Asymmetric Power Distribution

Description

Random generation for the modified Asymmetric Power Distribution with parameters theta, phi, alpha and lambda.

This generator is called by function gensample to create random variables based on its parameters.

Arguments

Details

If theta, phi, alpha and lambda are not specified they assume the default values of 0, 1, 0.5 and 2, respectively.

The modified Asymmetric Power Distribution with parameters theta, phi, theta1 and theta2 has density: $$f(x\mid\boldsymbol{\theta})=\frac{(\delta_{\boldsymbol{\theta}}/2)^{1/\theta_2}}{\Gamma(1+1/\theta_2)}\exp\left[-\left(\frac{2(\delta_{\boldsymbol{\theta}}/2)^{1/\theta_2}}{1+sign(x)(1-2\theta_1)}|x|\right)^{\theta_2}\right]$$ where \(\boldsymbol{\theta}=(\theta_2, \theta_1)^T\) is the vector of parameters, \(\theta_2>0, 0<\theta_1<1\) and $$\delta_{\boldsymbol{\theta}}=\frac{2(\theta_1)^{\theta_2} (1-\theta_1)^{\theta_2}}{(\theta_1)^{\theta_2}+(1-\theta_1)^{\theta_2}}$$.

The mean and variance of APD are defined respectively by $$E(U) = \theta + 2 ^ {1 / \theta_2} \phi \Gamma(2 / \theta_2) (1 - 2 \theta_1) \delta ^ {-1 / \theta_2} / \Gamma(1 / \theta_2)$$ and $$V(U) = 2 ^ {2 / \theta_2} \phi ^ 2 \left(\Gamma(3 / \theta_2) \Gamma(1 / \theta_2) (1 - 3 \theta_1 + 3 \theta_1 ^ 2) - \Gamma^2(2 / \theta_2) (1 - 2 \theta_1) ^ 2\right) \delta ^ {-2 / \theta_2} / \Gamma^2(1 / \theta_2).$$

References

Pierre Lafaye de Micheaux, Viet Anh Tran (2016). PoweR: A Reproducible Research Tool to Ease Monte Carlo Power Simulation Studies for Goodness-of-fit Tests in R. Journal of Statistical Software, 69(3), 1--42. doi:10.18637/jss.v069.i03

Desgagne, A. and Lafaye de Micheaux, P. and Leblanc, A. (2016), Test of normality based on alternate measures of skewness and kurtosis, ,

See Also

See Distributions for other standard distributions.

Examples

Run this code
# NOT RUN {
res <- gensample(39, 10000, law.pars = c(3, 2, 0.5, 1))
res$law
res$law.pars
mean(res$sample)
sd(res$sample)
# }

Run the code above in your browser using DataLab