[R] passing parameters in optim()
Thomas Lumley
tlumley at u.washington.edu
Tue Feb 5 23:23:18 CET 2002
On Tue, 5 Feb 2002, Nancy Lo wrote:
> Hi all,
>
> I am using optim() to get estimate for parameter 'a' which will minimize
> the output of lprob.catch(a) and I got an error message:
>
> > optim(2,lprob.catch(x, freq,1, 0.5,0.5, a,- 0.7, 1, -0.7,0.1,
> 1,0.2,2,1,data.sf.mont))
> Error in catch2.fun(k, f1, f2, a, b, A, B, R, n0, av, index.n) :
> Object "a" not found
>
>
> Why wasn't the initial value of a=2 passed to catch2.fun() which was
> called by lprob.catch()?
>
The second argument to optim() must be a function of one variable
(possibly a vector variable), but
lprob.catch(x, freq,1, 0.5,0.5, a,- 0.7, 1, -0.7,0.1, 1,0.2,2,1,data.sf.mont)
is a not a function at all. How is optim() supposed to know that a=2,
rather than x=2, or data.sf.mont=2?
You probably wanted
optim(2,function(a) {lprob.catch(x, freq,1, 0.5,0.5, a,- 0.7, 1, -0.7,0.1,1,0.2,2,1,data.sf.mont)})
assuming that all the other variables are defined.
-thomas
Thomas Lumley Asst. Professor, Biostatistics
tlumley at u.washington.edu University of Washington, Seattle
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
More information about the R-help
mailing list