Hi,
the following R lines work fine in R 2.4.0 alpha (and older R versions), but not
in R
2.4.0 beta (details below):
library(drc) # to load the dataset 'PestSci'
library(nlme)
## Starting values
sv <- c(0.328919, 1.956121, 0.097547, 1.642436, 0.208924)
## No error
m1 <- nlme(SLOPE ~ c + (d-c)/(1+exp(b*(log(DOSE)-log(e)))),
fixed = list(b+c+d+e~1),
random = d~1|CURVE,
start = sv[c(2,3,4,5)], data = PestSci)
## Error: attempt to select more than one element
m2 <- nlme(SLOPE ~ c + (d-c)/(1+exp(b*(log(DOSE)-log(e)))),
fixed = list(b~HERBICIDE, c+d+e~1),
random = d~1|CURVE,
start = sv, data = PestSci)
Output from sessionInfo() for R 2.4.0 alpha
R version 2.4.0 alpha (2006-09-16 r39365)
i386-pc-mingw32
locale:
LC_COLLATE=Danish_Denmark.1252;LC_CTYPE=Danish_Denmark.1252;LC_MONETARY=Danish_Denmark.1252;LC_NUMERIC=C;
LC_TIME=Danish_Denmark.1252
attached base packages:
[1] "methods" "stats" "graphics"
"grDevices" "utils" "datasets"
[7] "base"
other attached packages:
nlme drc
"3.1-75" "1.0-1"
Output from sessionInfo() for R 2.4.0 beta
R version 2.4.0 beta (2006-09-24 r39497)
i386-pc-mingw32
locale:
LC_COLLATE=Danish_Denmark.1252;LC_CTYPE=Danish_Denmark.1252;LC_MONETARY=Danish_Denmark.1252;LC_NUMERIC=C;
LC_TIME=Danish_Denmark.1252
attached base packages:
[1] "methods" "stats" "graphics"
"grDevices" "utils" "datasets"
[7] "base"
other attached packages:
nlme drc
"3.1-76" "1.0-1"
Christian
Christian Ritz <ritz at kvl.dk> writes:> Hi, > > the following R lines work fine in R 2.4.0 alpha (and older R versions), but not in R > 2.4.0 beta (details below): > > > library(drc) # to load the dataset 'PestSci' > > library(nlme) > > > ## Starting values > sv <- c(0.328919, 1.956121, 0.097547, 1.642436, 0.208924) > > > ## No error > m1 <- nlme(SLOPE ~ c + (d-c)/(1+exp(b*(log(DOSE)-log(e)))), > fixed = list(b+c+d+e~1), > random = d~1|CURVE, > start = sv[c(2,3,4,5)], data = PestSci) > > > ## Error: attempt to select more than one element > m2 <- nlme(SLOPE ~ c + (d-c)/(1+exp(b*(log(DOSE)-log(e)))), > fixed = list(b~HERBICIDE, c+d+e~1), > random = d~1|CURVE, > start = sv, data = PestSci)...> other attached packages: > nlme drc > "3.1-75" "1.0-1"....> nlme drc > "3.1-76" "1.0-1"I presume this is the real issue: The upgrade of nlme, rather than the change of R itself from alpha to beta status. The culprit would seem to be pars[, nm] <- f %*% beta[[fmap[[nm]]]] inside nlme:::getParsNlme(). fmap[[nm]] is not necessarily a scalar, so the outer set of [[]] should likely be []. The maintainer of nlme will know for sure. -- O__ ---- Peter Dalgaard ?ster Farimagsgade 5, Entr.B c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907