On 19/11/15 11:31, C W wrote:
Dear R list,

I am trying to find the MLE of the likelihood function.  I will plot the
log-likelihood to check my answer.

Here's my R code:

xvec <- c(2,5,3,7,-3,-2,0)

fn <- function(theta){

sum(0.5 * (xvec - rep(theta, 7)) ^ 2 / 1 + 0.5 * log(1))

}

gn <- Vectorize(fn)

curve(gn, -5, 20)

optimize(gn, c(-5, 20))

$minimum

[1] 1.714286

$objective

[1] 39.71429


The MLE using optimize() is 1.71, but what curve() gives me is the absolute
minimum.

I think 1.71 is the right answer, but why does the graph showing it's the
minimum?  What is going on here?

Your graph shows that there is indeed a *minimum* at 1.71. And optimise() is correctly finding that minimum.

If you want optimise() to find the maximum, set maximum=TRUE. In which case it will return "20" (or something very close to 20).

Your function fn() appears not to be the log likelihood that you had in mind. Perhaps you the negative of fn()???

cheers,

Rolf Turner

--
Technical Editor ANZJS
Department of Statistics
University of Auckland
Phone: +64-9-373-7599 ext. 88276

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to