On Mon, 10 May 2010, Allin Cottrell wrote:
On Mon, 10 May 2010, RAZIA HAIDER wrote:
> Thanks for quick reply. First i realized my basic mistakes :), now i have
> changed script, which is given below...
By the way, if you want to use analytical derivatives, which may
give better convergence, here's a version that does that:
<script>
open data7-9
series y = vsat
scalar a = -0.5 * log(sqrt(2*pi))
# your initialization here...
scalar mu = 400
scalar sigma = 100
mle logl = a - log(sigma) - (y-mu)^2 / (2*sigma^2)
deriv mu = (y-mu) / (2*sigma^2)
deriv sigma = -1/sigma + (y-mu)^2 / (sigma^3)
end mle
# check results
scalar n = $nobs
scalar sigma_hat = sqrt(var(y) * (n-1)/n)
printf "mean = %g, sigma_hat = %g\n", mean(y), sigma_hat
</script>
Allin Cottrell