[R] nlxb generating no SE

Prof J C Nash (U30A) nashjc at uottawa.ca
Thu Aug 28 15:25:59 CEST 2014


You didn't give your results (but DID give a script -- hooray!). I made
a small change -- got rid of the bounds and added trace=TRUE, and got
the output

##     after  5001    Jacobian and  6997 function evaluations
##   name            coeff          SE       tstat      pval
gradient    JSingval
## p1               53.1753            NA         NA         NA
0.01591   1.158e+13
## p2                 8.296            NA         NA         NA
8.959e+11       4.549
## p3              -7.47638            NA         NA         NA
-0.002521      0.3049
## p4              -1.64963            NA         NA         NA
-0.003805      0.1073
## p5               1.44299            NA         NA         NA
0.001269     0.02521
## p6               91.1994            NA         NA         NA
-0.01548     0.01474
## >

Sorry that this doesn't display correctly in plain text emailer (wrapped
lines). However, it shows

1) This is a pretty nasty problem that has NOT got to the convergence
point, as indicated by 5001 Jacobians. In that case I don't give the
summary(). That is a hint to provide more diagnostics when I do some
upgrade (in process -- new nls14() with Duncan Murdoch is on r-forge
now, but much work to be done).

2) The Jacobian is effectively singular.

3) The parameter scaling is awful.

Maybe time to reformulate.

Best, JN



On 14-08-28 06:00 AM, r-help-request at r-project.org wrote:
> Message: 23
> Date: Wed, 27 Aug 2014 12:52:59 -0700
> From: Andras Farkas <motyocska at yahoo.com>
> To: r-help at r-project.org
> Subject: [R] nlxb generating no SE
> Message-ID:
> 	<1409169179.90920.YahooMailBasic at web161605.mail.bf1.yahoo.com>
> Content-Type: text/plain; charset=us-ascii
> 
> Dear All
> 
> please provide insights to the following, if possible:
>  we have
> 
> E <-c(8.2638 ,7.9634, 7.5636, 6.8669, 5.7599, 8.1890, 8.2960, 8.1481, 8.1371, 8.1322 ,7.9488, 7.8416, 8.0650,
>  8.1753, 8.0986 ,8.0224, 8.0942, 8.0357, 7.8794, 7.8691, 8.0660, 8.0753, 8.0447, 7.8647, 7.8837, 7.8416,
>  7.6967, 7.4922, 7.7161, 7.6378 ,7.5128 ,7.4886, 7.4667, 7.3940, 7.2450, 7.1756, 6.7253, 6.7213, 6.9897,
>  6.7053, 6.3637, 6.8318 ,5.5420, 6.8955, 6.6074, 7.0689, 0.0010 ,1.3010, 1.3010 ,0.0010, 0.0010)
> 
> D1<-  c(0.00,  0.00,  0.00 , 0.00,  0.00,  0.25,  0.50 , 1.00 , 2.00,  4.00,  8.00, 16.00, 32.00,  0.25,  0.50,  1.00,
>  2.00,  4.00,  8.00, 16.00, 32.00 , 0.25  ,0.50,  1.00 , 2.00,  4.00 , 8.00, 16.00 ,32.00 , 0.25 , 0.50 , 1.00
> ,  2.00,  4.00,  8.00, 16.00 , 0.25,  0.50 , 1.00  ,2.00,  4.00,  8.00 ,16.00,  0.25,  0.50,  1.00,  4.00,  8.00,
> 16.00, 32.00, 32.00)
> D2 <-c(4 , 8, 16, 32, 64,  0,  0,  0,  0,  0,  0,  0,  0,  4,  4,  4,  4,  4,  4,  4,  4,  8,  8,  8,  8,  8,  8,  8,  8, 16 ,16 ,16,
> 16, 16, 16, 16, 32 ,32 ,32, 32, 32, 32, 32, 64, 64, 64, 64, 64, 64, 64, 32)
> y <-rep(1,length(E))
> raw <-data.frame(D1,D2,E,y)
> 
> require(nlmrt)
> start <-list(p1=60,p2=9,p3=-8.01258,p4=-1.74327,p5=-5,p6=82.8655)
> print(nlxb <-nlxb(y ~D1/(p1*((E/(p2-E))^(1/p3)))+D2/(p6*((E/(p2-E))^(1/p4)))+(p5*D1*D2)/(p1*p6*((E/(p2-E))^(0.5/p3+0.5/p4))), start=start,data=raw, lower=-Inf, upper=Inf))
> 
> and once you run the code you will see the "best" I was able to get out of this data set using the model. "Best" here means the result that made most sense from the perspective of applying it to life science.... My question is related to the lack of calculated SEs (standard errors, correct me if I am wrong)... I would like to calculate CIs for the parameters, and as far as I understand SEs would be needed to be able to do that. Any suggestions for how we may establish 95% CIs for the estimated parameters?
> 
> appreciate your input,
> 
> thanks,
> 
> Andras



More information about the R-help mailing list