Florent Bresson
2005-Dec-11 14:31 UTC
[R] Quantile function for the generalized beta distribution of the 2nd kind
I have succeded in defining the cdf of the generalized beta of the second kind, eg. pgbeta2 <- function(quint,b,a,p1,p2) { integrate(function(x) {exp(log(a)+(a*p1-1)*log(x)-(a*p1)*log(b)-log(beta(p1,p2))-(p1+p2)*log(1+(x/b)^a))},0,quint)$value } but I'm facing problems with the quantile function. I tried something like qgbeta2 <- function(proba,b,a,p1,p2) { optimize(function(z) {(proba-pgbeta2(z,b,a,p1,p2))^2},lower=0, upper=10^200) } but it doesn't work. I tried with other non linear optimization command like optim but it is apparently not the solution. Any idea ?
Prof Brian Ripley
2005-Dec-12 08:29 UTC
[R] Quantile function for the generalized beta distribution of the 2nd kind
Don't you want to use uniroot() to find quantiles? It is the usual way. Note that if you use integrate(), the result is not guaranteed to be smooth function of the parameters. I may well help to decrease the tolerances.> but it doesn't workPlease see the posting guide, and tell us useful information about what precisely happened. On Sun, 11 Dec 2005, Florent Bresson wrote:> I have succeded in defining the cdf of the generalized > beta of the second kind, eg. > > pgbeta2 <- function(quint,b,a,p1,p2) { > integrate(function(x) > {exp(log(a)+(a*p1-1)*log(x)-(a*p1)*log(b)-log(beta(p1,p2))-(p1+p2)*log(1+(x/b)^a))},0,quint)$value > } > > but I'm facing problems with the quantile function. I > tried something like > > qgbeta2 <- function(proba,b,a,p1,p2) { > optimize(function(z) > {(proba-pgbeta2(z,b,a,p1,p2))^2},lower=0, > upper=10^200) } > > but it doesn't work. I tried with other non linear > optimization command like optim but it is apparently > not the solution. > Any idea ? > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html >-- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595