# [R] Weibull distribution

From: Leaf Sun <leaflovesun_at_yahoo.ca>
Date: Tue 18 Jul 2006 - 04:18:08 EST

Hi all,

By its definition, the mean and variance of two-par. Weibull distribution are:

(www.wikipedia.org)

I was wondering, if given mean and sd. could we parameterize the distribution? I tried this in R.

gamma.fun <- function(mu,sd,start=100) {
f.fn <- function(alpha) sd^2-mu^2/(gamma(1+1/alpha))^2*(gamma(1+2/alpha)-(gamma(1+1/alpha))^2) alpha <- optim(start, f.fn,method='BFGS') beta <- mu/gamma(1+1/alpha\$par)
return(list=c(a=alpha\$par,b=beta));
}

But the problems come up here:

1. the return values of a and b are only related to the input mean, and nothing to do with the sd. For instance, when I apply a mean mu = 3 whatever I use sd=2, sd=4, the function returned the same scale and shape values.

> gamma.fun(3,4,10);

a b
5.112554 3.263178

> gamma.fun(3,2,10);

a b
5.112554 3.263178

2) the start value determines the results: if I apply mean = 3, and sd=2, with a start of 10, it would return alpha close to 10, if I use a start = 100, it would return alpha close to 100.

> gamma.fun(3,2,10);

a b
5.112554 3.263178

> gamma.fun(3,2,100);

a b
99.999971 3.017120

Since I am not a statistician, I guess there must be some theoretical reasons wrong with this question. So I am looking forward to some correction and advice to solve these. Thanks a lot in advance!

Leaf

[[alternative HTML version deleted]]

R-help@stat.math.ethz.ch mailing list