3

I am trying to fit growth data from juvenile geese to the Gompertz model, but I would like to fix it at the y-intercept, which would correspond in this case to body mass of 72.1 for t = 0. Taking the parametization form used in SSgompertz in nls, I transformed the equation $Asym * (e^{-b3 * b2^x}$ into $\frac{X_0}{exp(-b3)} * (e^{-b3 * b2^x}$ by setting x = 0, equalling with the y-intercept and solving for Asym, which I consequently replaced in the model by the term of the other side: $\frac{X_0}{exp(-b3)}$

The problem is that with this altered model I cannot use the starting values obtained from SSgompertz anymore:

library(nlme)
fbmgrp   <- groupedData(bm   ~ age | dummy, data = bmdata) # I put the data at the bottom of my question

# Defining the Gompertz model with fixed y-intercept
gobm   <- function(Age, b2, b3) ((72.1 / exp(-b2)) * (exp(-b2 * (b3^Age))))
gobm   <- deriv(body(gobm)[[2]], namevec = c("Age", "b2", "b3"), function.arg = gobm)

fm1 <- nls(bm ~ SSgompertz(age, Asym, b2, b3), data = bmgrp) 
# Using parameter estimates for b2 and b3 from SSgompertz in the customized Gompertz model leads to an error:
fm2 <- nls(bm ~ gobm(age, b2, b3), data = bmgrp, start = list(b2 = coef(fm1)[2], b3 = coef(fm1)[3]), na.action = na.exclude)

Error in qr.default(.swts * attr(rhs, "gradient")) : NA/NaN/Inf in foreign function call (arg 1)
In addition: Warning message: In log(b3): NaNs produced
5: qr.default(.swts * > attr(rhs, "gradient")) 4: qr(.swts * attr(rhs, "gradient"))
3: assign("QR", qr(.swts * attr(rhs, "gradient")), envir = thisEnv)
2: (function (newPars) {setPars(newPars) assign("resid", .swts * (lhs - assign("rhs", getRHS(), envir = thisEnv)), envir = thisEnv) assign("dev", sum(resid^2), envir = thisEnv) assign("QR", qr(.swts * attr(rhs, "gradient")), envir = thisEnv) return(QR$rank < min(dim(QR$qr)))})(c(7.52734494474091, -0.123046281607752))
1: nls(bm ~ gobm(age, I, K), data = bmgrpd, start = list(I = coef(fm13a)[2], K = coef(fm13a)[3]), na.action = na.exclude)

Is there maybe a way to get from parameter estimates from SSgompertz to suitable initual values for a Gompertz model with fixed y-intercept? ?SSgompertz says that the inflection point b2 is related to the value of the function at x = 0. In Ricklefs bookchapter ‘Avian postnatal development’ (1983), he displays a different parameterization of the Gompertz model: $M(x) = M(∞) * e^{-[log M(∞) - log M(0)] * e^(-K * x)}$ So the difference between asymptote M(∞) or Asym and y-intercept M(0) or X0 represents the inflection point b2: $b2 = log(Asym) - log(X0) <--> X0 = Asym - e^{b2}$ I checked this relationship out with the coefficients from fm1:

coef(fm1) Asym b2 b3 1079.4598299 8.6815201 0.8710308 But coef(fm1)[1] - exp(coef(fm1)[2]) resulted in -4813.538 which is not in the least near the true y-intercept near 0: SSgompertz(0, Asym = coef(fm1)1, b2 = coef(fm1)[2], b3 = coef(fm1)[3])

0.1831767

Here a plot of the fit with the parameters from SSgompertz: Fit of Gompertz model to body mass measurements

So I would greatly appreciate if someone can help me in finding initial values for a Gompertz model with fixed y-intercept!

Here are the data:

bmdata <- read.table(header = TRUE, stringsAsFactors = TRUE, text = "
pop year    sex age bm  dummy
RUS 2013    f   7   137 1
NL  2012    f   10  132 1
RUS 2013    f   10  225 1
RUS 2013    f   12  183 1
RUS 2013    f   19  362 1
RUS 2003    f   19  880 1
RUS 2005    f   19  750 1
RUS 2005    f   19  625 1
RUS 2004    f   20  670 1
RUS 2004    f   20  900 1
RUS 2004    f   20  740 1
NL  2012    f   21  260 1
RUS 2015    f   21  510 1
RUS 2014    f   22  660 1
RUS 2015    f   22  500 1
RUS 2003    f   22  776 1
RUS 2003    f   22  890 1
RUS 2003    f   22  1010    1
RUS 2004    f   22  612 1
RUS 2004    f   22  316 1
RUS 2004    f   22  622 1
RUS 2004    f   22  438 1
RUS 2005    f   22  684 1
RUS 2005    f   22  652 1
RUS 2014    f   23  695 1
RUS 2015    f   23  520 1
RUS 2015    f   23  450 1
RUS 2003    f   23  854 1
RUS 2003    f   23  897 1
RUS 2003    f   23  1180    1
RUS 2004    f   23  990 1
RUS 2004    f   23  1110    1
RUS 2004    f   23  1080    1
RUS 2004    f   23  500 1
RUS 2004    f   23  480 1
RUS 2005    f   23  820 1
NL  2012    f   24  190 1
RUS 2013    f   24  400 1
RUS 2014    f   24  740 1
RUS 2014    f   24  775 1
RUS 2014    f   24  840 1
RUS 2015    f   24  490 1
RUS 2004    f   24  870 1
RUS 2004    f   24  516 1
RUS 2004    f   24  672 1
RUS 2004    f   24  604 1
RUS 2005    f   24  820 1
RUS 2005    f   24  910 1
NL  2015    f   25  490 1
RUS 2013    f   25  620 1
RUS 2014    f   25  880 1
RUS 2014    f   25  860 1
RUS 2015    f   25  930 1
RUS 2003    f   25  980 1
RUS 2004    f   25  680 1
RUS 2004    f   25  1070    1
RUS 2004    f   25  940 1
RUS 2004    f   25  900 1
RUS 2004    f   25  910 1
RUS 2014    f   26  985 1
RUS 2014    f   26  882 1
RUS 2014    f   26  860 1
RUS 2014    f   26  945 1
NL  2004    f   26  480 1
RUS 2003    f   26  900 1
RUS 2004    f   26  720 1
RUS 2004    f   26  634 1
RUS 2014    f   27  800 1
RUS 2014    f   27  830 1
RUS 2014    f   27  940 1
RUS 2014    f   27  950 1
RUS 2014    f   27  980 1
RUS 2015    f   27  600 1
RUS 2003    f   27  1080    1
RUS 2003    f   27  762 1
RUS 2003    f   27  880 1
RUS 2003    f   27  1020    1
RUS 2003    f   27  950 1
RUS 2003    f   27  1050    1
RUS 2003    f   27  1140    1
RUS 2003    f   27  1080    1
RUS 2003    f   27  1060    1
RUS 2004    f   27  1300    1
RUS 2004    f   27  630 1
RUS 2005    f   27  990 1
NL  2012    f   28  237 1
RUS 2014    f   28  790 1
RUS 2014    f   28  1005    1
RUS 2014    f   28  855 1
RUS 2014    f   28  1005    1
RUS 2015    f   28  660 1
RUS 2003    f   28  966 1
RUS 2003    f   28  902 1
RUS 2003    f   28  740 1
RUS 2003    f   28  960 1
RUS 2003    f   28  1140    1
RUS 2004    f   28  744 1
RUS 2005    f   28  517 1
NL  2015    f   29  430 1
NL  2015    f   29  425 1
RUS 2014    f   29  1100    1
RUS 2014    f   29  1115    1
RUS 2014    f   29  1000    1
RUS 2014    f   29  1055    1
RUS 2014    f   29  1100    1
RUS 2014    f   29  1020    1
RUS 2014    f   29  1125    1
RUS 2014    f   29  1245    1
RUS 2014    f   29  985 1
RUS 2015    f   29  980 1
RUS 2004    f   29  612 1
RUS 2004    f   29  860 1
RUS 2005    f   29  510 1
RUS 2005    f   29  902 1
RUS 2005    f   29  910 1
RUS 2014    f   30  1000    1
RUS 2014    f   30  1000    1
RUS 2014    f   30  1100    1
RUS 2014    f   30  1200    1
RUS 2014    f   30  1030    1
RUS 2014    f   30  980 1
RUS 2014    f   30  1000    1
RUS 2014    f   30  890 1
RUS 2004    f   30  965 1
RUS 2004    f   30  720 1
RUS 2004    f   30  1090    1
RUS 2004    f   30  840 1
RUS 2005    f   30  1146    1
NL  2012    f   31  430 1
RUS 2014    f   31  1140    1
RUS 2014    f   31  1225    1
RUS 2015    f   31  1000    1
RUS 2015    f   31  1020    1
RUS 2015    f   31  1130    1
RUS 2015    f   31  730 1
RUS 2004    f   31  1024    1
RUS 2004    f   31  704 1
RUS 2005    f   31  910 1
RUS 2005    f   31  870 1
NL  2012    f   32  418 1
NL  2012    f   32  282 1
RUS 2014    f   32  1140    1
RUS 2014    f   32  1125    1
RUS 2014    f   32  1085    1
RUS 2015    f   32  1200    1
NL  2004    f   32  530 1
RUS 2003    f   32  1140    1
RUS 2004    f   32  640 1
RUS 2005    f   32  830 1
RUS 2005    f   32  1050    1
RUS 2005    f   32  1140    1
RUS 2005    f   32  1070    1
RUS 2005    f   32  1050    1
RUS 2005    f   32  930 1
RUS 2014    f   33  1090    1
RUS 2014    f   33  1310    1
RUS 2014    f   33  1105    1
RUS 2014    f   33  1060    1
RUS 2015    f   33  820 1
RUS 2015    f   33  750 1
RUS 2003    f   33  850 1
RUS 2004    f   33  476 1
RUS 2004    f   33  810 1
RUS 2004    f   33  1050    1
RUS 2004    f   33  935 1
NL  2015    f   34  560 1
NL  2012    f   34  438 1
NL  2012    f   34  440 1
RUS 2014    f   34  990 1
RUS 2014    f   34  1220    1
RUS 2014    f   34  1090    1
RUS 2014    f   34  1085    1
RUS 2015    f   34  820 1
RUS 2004    f   34  1042    1
RUS 2004    f   34  980 1
RUS 2004    f   34  930 1
RUS 2013    f   35  860 1
RUS 2014    f   35  1210    1
RUS 2014    f   35  1040    1
RUS 2014    f   35  1080    1
RUS 2014    f   35  1270    1
RUS 2004    f   35  1020    1
RUS 2005    f   35  1150    1
NL  2015    f   36  480 1
NL  2015    f   36  530 1
NL  2012    f   36  460 1
RUS 2015    f   36  720 1
RUS 2015    f   36  1060    1
RUS 2005    f   36  1000    1
RUS 2005    f   36  1170    1
RUS 2013    f   37  1030    1
RUS 2013    f   37  1050    1
RUS 2014    f   37  1095    1
RUS 2014    f   37  1025    1
RUS 2014    f   37  1250    1
RUS 2015    f   37  1060    1
RUS 2004    f   37  1120    1
RUS 2014    f   38  1140    1
RUS 2014    f   38  935 1
RUS 2014    f   38  1430    1
RUS 2014    f   38  1225    1
RUS 2014    f   38  1225    1
RUS 2014    f   38  1315    1
NL  2012    f   39  535 1
NL  2012    f   39  195 1
NL  2012    f   39  1090    1
RUS 2014    f   39  1325    1
RUS 2015    f   39  1110    1
RUS 2015    f   39  1030    1
RUS 2015    f   39  960 1
RUS 2015    f   39  980 1
RUS 2014    f   40  1230    1
RUS 2014    f   40  1300    1
RUS 2015    f   40  1040    1
RUS 2003    f   40  1180    1
NL  2012    f   41  500 1
RUS 2015    f   41  1190    1
NL  2004    f   41  1000    1
NL  2012    f   42  580 1
NL  2015    f   44  770 1
NL  2012    f   44  580 1
NL  2012    f   44  700 1
NL  2005    f   44  1050    1
NL  2012    f   45  680 1
NL  2004    f   47  1210    1
NL  2004    f   47  1250    1
NL  2012    f   48  480 1
NL  2012    f   49  605 1
NL  2012    f   49  407 1
NL  2012    f   50  1060    1
NL  2004    f   50  1320    1
NL  2004    f   50  940 1
NL  2012    f   51  1325    1
NL  2012    f   52  1220    1
NL  2012    f   53  880 1
NL  2012    f   53  880 1
NL  2012    f   53  1300    1
NL  2012    f   54  695 1
NL  2012    f   54  640 1
NL  2012    f   54  830 1
NL  2004    f   54  910 1
NL  2004    f   54  1110    1
NL  2012    f   56  540 1
NL  2012    f   56  1225    1
NL  2012    f   56  1280    1
NL  2015    f   57  1080    1
NL  2012    f   57  1180    1
NL  2015    f   58  980 1
NL  2015    f   58  1040    1
NL  2012    f   58  740 1
NL  2015    f   59  1040    1
NL  2015    f   59  1030    1
NL  2015    f   59  1140    1
NL  2012    f   59  1360    1
NL  2012    f   61  900 1")
Johan
  • 74,508
  • 24
  • 191
  • 319
ebcs
  • 89
  • 8

0 Answers0