[Rd] Problem using option packeg with new R version (PR#13498)

From: <_at_pubhealth.ku.dk>
Date: Wed, 04 Feb 2009 17:45:05 +0100 (CET)

Hello, I'm facing a problem, using "optim" packeg. I've written a program and run it using the latest R version 2.8.1,but there was an error message as following:

R version 2.7.2 (2008-08-25) # same result when I use R version 2.8.1,Copyright (C) 2008 The R Foundation for Statistical ComputingISBN 3-900051-07-0R is free software and comes with ABSOLUTELY NO WARRANTY.You are welcome to redistribute it under certain conditions.Type 'license()' or 'licence()' for distribution details.  Natural language support but running in an English localeR is a collaborative project with many contributors.Type 'contributors()' for more information and'citation()' on how to cite R or R packages in publications.Type 'demo()' for some demos, 'help()' for on-line help, or'help.start()' for an HTML browser interface to help.Type 'q()' to quit R.> #=========================================================> #3rd trial> #=========================================================> > X<-matrix(rnorm(30),5,6)> X            [,1]        [,2]        [,3]       [,4]       [,5]       [,6][1,] -0.27769355  0.54293814 -1.93856940 -1.8097458 -0.9172400 -0.5542488[2,] -0!

.09146831 0.26066833 0.91905734 0.2981062 0.4640875 -0.1789108[3,] -0.99167996 -0.64401482 -0.08517589 -0.4101295 1.5204661 1.3439740[4,] -1.54003312 -0.03145120 0.17489151 1.1248919 0.6047474 1.1909949[5,] -0.94150604 0.19836236 -0.63982776 0.5272774 -0.4088086 -0.2593536> > n<-nrow(X)> p<-ncol(X)> n[1] 5> p[1] 6> > v<-rep(0,p-1)> v[1] 0 0 0 0 0> > fn1<-function(v) {+ a<-sum(v*v)+ u<-v/sqrt(1+a)+ b<-sum(u*u)+ u[length(v)+1]<-sqrt(1+b)+ c<<- X %*% u # also I try c<- X %*% u+ fn1<- - optim(c(0,1),fn2,NULL,method="BFGS",c)$value+ }> > > fn2<-function(par){+ fn2<- -length(c)*log(par[2])+sum(log(par[2]*par[2]+(c-par[1])*(c-par[1])))+ }> optim(v,fn1,NULL,method="BFGS",X)Error in fn(par, ...) : unused argument(s) (c(-0.277693546148993, -0.091468312551809, -0.99167995523182, -1.5400331178273, -0.941506038285282, 0.542938135331624, 0.260668332757676, -0.64401482390065, -0.0314512041135196, 0.198362357527128, -1.93856939573315, 0.919057338245786, -0.085175885159938, 0!
.174891510504697, -0.639827759135, -1.80974578397221, 0.298106!
 24003356

9, -0.410129481117372, 1.12489185606582, 0.527277375478827, -0.917240000748393, 0.464087477214494, 1.52046606812109, 0.60474736264106, -0.408808568730677, -0.554248793092077, > > > c<-rnorm(10)> v<-rnorm(10)> w<-rexp(10)> fn1<-function(v) {+ for(i in 1:10){+ par[1]<-v[i]+ par[2]<-w[i]+ a[i]<-optim(par,fn2, NULL,method="BFGS",c)$value+ }+ }> fn2<-function(par){+ fn2<- -length(c)*log(par[2])+sum(log(par[2]*par[2]+(c-par[1])*(c-par[1])))+ }> > optim(v,fn1,NULL,method="BFGS",X)Error in fn(par, ...) : unused argument(s) (c(-0.277693546148993, -0.091468312551809, -0.99167995523182, -1.5400331178273, -0.941506038285282, 0.542938135331624, 0.260668332757676, -0.64401482390065, -0.0314512041135196, 0.198362357527128, -1.93856939573315, 0.919057338245786, -0.085175885159938, 0.174891510504697, -0.639827759135, -1.80974578397221, 0.298106240033569, -0.410129481117372, 1.12489185606582, 0.527277375478827, -0.917240000748393, 0.464087477214494, 1.52046606812109, 0.60474736264106, -0.40!  8808568730677, -0.554248793092077, >

Wihle, when I run the same program on the old Version 1.7.1,  I've got different result as follows:R : Copyright 2003, The R Development Core TeamVersion 1.7.1  (2003-06-16)R is free software and comes with ABSOLUTELY NO WARRANTY.You are welcome to redistribute it under certain conditions.Type `license()' or `licence()' for distribution details.R is a collaborative project with many contributors.Type `contributors()' for more information.Type `demo()' for some demos, `help()' for on-line help, or`help.start()' for a HTML browser interface to help.Type `q()' to quit R.[Previously saved workspace restored]> #=========================================================> #3rd trial> #=========================================================> > X<-matrix(rnorm(30),5,6)> X           [,1]         [,2]        [,3]       [,4]        [,5]       [,6][1,]  0.3857697 -0.676798170 -1.39627127 -0.5585526  0.49491835 -1.5055718[2,] -1.3984869  0.036486347 -0.27965160  0.4181540  0.28574020 -0.!
 1874612[3,]  0.4118289  0.062688233  1.67673064  0.3231048 -0.58132802 -1.5297349[4,] -0.8236798 -2.142110808  0.07844006  2.4561737 -0.08797541  0.1006625[5,] -1.6269258  0.004665647  1.21449692 -0.5522195 -1.57935227  0.7255697> > n<-nrow(X)> p<-ncol(X)> n[1] 5> p[1] 6> > v<-rep(0,p-1)> v[1] 0 0 0 0 0> > > fn1<-function(v) {+ a<-sum(v*v)+ u<-v/sqrt(1+a)+ b<-sum(u*u)+ u[length(v)+1]<-sqrt(1+b)+ c<<- X %*% u+ #c<- X %*% u+ fn1<- - optim(c(0,1),fn2,NULL,method="BFGS",c)$value+ }>  > > fn2<-function(par){+ fn2<- -length(c)*log(par[2])+sum(log(par[2]*par[2]+(c-par[1])*(c-par[1])))+ }> optim(v,fn1,NULL,method="BFGS",X)$par[1]  0.3857697 -1.3984869  2.0925084  3.2370430 -1.6269258$value[1] -6.132011$countsfunction gradient       15       15 $convergence[1] 0$message[1] "CONVERGENCE: REL_REDUCTION_OF_F <= FACTR*EPSMCH"There were 50 or more warnings (use warnings() to see the first 50)> #=====================================================================================> > c<-rn!
 orm(10)> v<-rnorm(10)> w<-rexp(10)> fn1<-function(v) {+ for(i !  in 1:10)
{+ par[1]<-v[i]+ par[2]<-w[i]+ a[i]<-optim(par,fn2, NULL,method="BFGS",c)$value+ }+ }> fn2<-function(par){+ fn2<- -length(c)*log(par[2])+sum(log(par[2]*par[2]+(c-par[1])*(c-par[1])))+ }> > optim(v,fn1,NULL,method="BFGS",X)Error in optim(par, fn2, NULL, method = "BFGS", c) :         L-BFGS-B needs finite values of fnIn addition: Warning messages: 1: bounds can only be used with method L-BFGS-B in: optim(v, fn1, NULL, method = "BFGS", X) 2: bounds can only be used with method L-BFGS-B in: optim(par, fn2, NULL, method = "BFGS", c) 3: bounds can only be used with method L-BFGS-B in: optim(par, fn2, NULL, method = "BFGS", c) 4: bounds can only be used with method L-BFGS-B in: optim(par, fn2, NULL, method = "BFGS", c) 5: bounds can only be used with method L-BFGS-B in: optim(par, fn2, NULL, method = "BFGS", c) 6: NaNs produced in: log(x) #======================================================================================== So, I'd be thankful  if you could help me solving this !
 problem and inform me weather there is bug in the newest version or the code is changed. Best RegardsAishaPh.D studentStatistics DeparmentUniversity of NottinghamUK

Windows Live Messenger just got better .Video display pics, contact updates & more. http://www.download.live.com/messenger

        [[alternative HTML version deleted]]



R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Wed 04 Feb 2009 - 16:58:22 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Wed 04 Feb 2009 - 17:30:18 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.

list of date sections of archive