nlm [unused argument(s) (iter = 1)]
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
Ashley put the following comment on Chapter 5 of Introducing Monte Carlo Methods with R”:
I am reading chapter 5. I try to reproduced the result on page 128. The R codes don’t work on my laptop. When I try to run the following codes on page 128
> for (i in 1:(nlm(like,sta)$it)){ + mmu=rbind(mmu,nlm(like,sta,iter=i)$est)}I always get the error message
Error in f(x, …) : unused argument(s) (iter = 1)It seems that the nlm function doesn’t accept the argument iter. I don’t know how to deal with it. I am in US. I guess the nlm version available to US R users is different from the version in EU. Please help.
And indeed with the most recent versions of R, like 2.12.1 on my own machine, calling nlm
> args(nlm) function (f, p, ..., hessian = FALSE, typsize = rep(1, length(p)), fscale = 1, print.level = 0, ndigit = 12, gradtol = 1e-06, stepmax = max(1000 * sqrt(sum((p/typsize)^2)), 1000), steptol = 1e-06, iterlim = 100, check.analyticals = TRUE)
with the abbreviated argument iter instead of iterlim produces the above error message. This means the full syntax iterlim=i should now be used. In addition, the function nlm produces the minimum of the first argument f and like should thus be defined as
> like=function(mu){ + -sum(log((.25*dnorm(da-mu[1])+.75*dnorm(da-mu[2]))))}
to end up with local maxima as on Figure 5.2. (Note: I do not think there are US versus EU versions of R…)
Filed under: Books, R, Statistics Tagged: Introducing Monte Carlo Methods with R, nlm, optimisation, R
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.