0

My data consist of two columns: time and cumulative number like below:

time <- c(1:14)
cum.num <- c(20, 45, 99, 195, 301, 407, 501, 582, 679, 753, 790, 861, 1011, 1441) 

My non linear function is:

c1*cos(0.6731984259*time)+c2*sin(0.6731984259*time)+c3*(time)^2+c4*time+c5

My objective is to model this function using non linear regression using nls() in R and to compute the confidence interval. I have donr the following:

m1.fit<-nls(cum.vul~c1*cos(0.6731984259*time)+c2*sin(0.6731984259*time)+c3*(time)^2+c4*time+c5,start=list(c1=-50,c2=-60,c3=5,c4=8,c5=100))

I got an error while computing confidence interval, i have tried the following:

confint(m1.fit)

Once i issued this command got the following error:

Waiting for profiling to be done...
Error in prof$getProfile() : 
step factor 0.000488281 reduced below 'minFactor' of 0.000976562

Can anyone help me in this regard?

Axeman
  • 32,068
  • 8
  • 81
  • 94
Nawa Raj
  • 111
  • 1
  • 7

1 Answers1

1

Try package nlstools:

> nlstools::confint2(m1.fit)
         2.5 %     97.5 %
c1  -48.556270  54.959689
c2 -175.654079 -45.216965
c3    3.285062   9.529072
c4  -49.254627  46.007629
c5  -34.135835 272.864743`
Ryan Morton
  • 2,605
  • 1
  • 16
  • 19
  • nlstools::confint2 produces Wald confidence intervals, yes? Be cautious with using that if the distribution of your parameter is skewed. – gradcylinder Mar 16 '22 at 20:47