On Fri, Oct 16, 2009 at 3:56 PM, Michael A. Gilchrist <mi...@utk.edu> wrote: > Hi Dieter, > > Thanks for the reply. I had played with the initial conditions, but > apparently not enough. I finally found some that avoided the singularity > issue. Many thanks. > > More generally, I went over the documentation yet again in P&B and I still > find it a bit confusing. They talk about using form = ~fitted(.) when > discussing varPower, but the rest of the documentation seems to suggest that > "form = ~..." should be used to indicate which covariate you assume the > variance changes with. > > Could you or someone else provide some clarification?
I don't have P&B in front of me, but see the 'form' agument definition on the help page for any of the variance structures depending on a covariate (varPower, varConstPower or varExp). The ~fitted(.) and ~resid(.) notation specify that you would like the variance covariate to be a function of the model being fit (the fitted values or residuals), in which case the variance parameter \delta and the model body are estimated iteratively. Conversely, if you specify a constant variance covariate such as ~age, there is no need for updating of the variance covariate during optimization. hth, Kingsford Jones > > Thanks. > > Mike > > On Fri, 16 Oct 2009, Dieter Menne wrote: > >> >> >> >> Michael A. Gilchrist wrote: >>> >>> --------------------------------------------- >>>> >>>> nlme(Count ~ quad.PBMC.model(aL, aN, T0), >>> >>> + data = tissueData, >>> + weights = varConstPower(form =~ Count), >>> + start = list( fixed = c(rep(1000, 8), -2, -2) ), >>> + fixed = list(T0 ~ TypeTissue-1, aL ~ 1, aN ~ 1), >>> + random = aL + aN ~ 1|Tissue >>> + ) >>> Error in MEestimate(nlmeSt, grpShrunk) : >>> Singularity in backsolve at level 0, block 1 >>>> >>>> >>> >> >> You could use varPower(form=~fitted()) (the default, also varPower()). In >> my >> experience this runs into some limitation quickly with nlme, because some >> boundary conditions make convergence fail. >> >> Try varPower(fixed = 0.5) first and play with the number. >> >> You should only use varConstPower when you have problems with values that >> cover a large range, coming close to zero, which could make varPower go >> havoc. >> >> Always do a plot of the result; the default plot gives you residual, and >> some indication how to proceed. >> >> Dieter >> >> >> -- >> View this message in context: >> http://www.nabble.com/Proper-syntax-for-using-varConstPower-in-nlme-tp25914277p25927578.html >> Sent from the R help mailing list archive at Nabble.com. >> >> ______________________________________________ >> R-help@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide >> http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.