Hi Rainer, I got an error while replicating your data.frame construction. But this worked for me
ctl = c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14) trt = c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69) dat <- data.frame( group = gl(2,10,20, labels=c("Ctl","Trt")), weight = c(ctl, trt) ) lm(weight ~ group, data=dat, subset=trt>0) Cheers Am 21.08.2012 17:11, schrieb Rainer M Krug: > On 21/08/12 16:57, Bert Gunter wrote: >> ?? I do not groc what you mean. ... subset == subs would work fine in >> your lm call. So unless someone else does get it, you may need to >> elaborate. > > OK - here is an example: > > dat <- data.frame( > ctl = c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14), > trt = c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69), > group = gl(2,10,20, labels=c("Ctl","Trt")), > weight = c(ctl, trt) > ) > lm(weight ~ group, data=dat, subset=trt>0) > > subst <- trt>0 ### here I get the obvious error: Error: object 'trt' not > found > > # I want to use: > > lm(weight ~ group, data=dat, subset=subst) > > >> >> In general, ?substitute, ?bquote, and ?quote are useful to avoid >> immediate evaluation of calls, but I don't know if that's relevant to >> what you want here. > > Looks promising from the help, but I don't get it to work. > > Rainer > >> >> -- Bert >> >> On Tue, Aug 21, 2012 at 7:44 AM, Rainer M Krug <r.m.k...@gmail.com> >> wrote: >>> Hi >>> >>> I want to do a series of linear models, and would like to define the >>> input >>> arguments for lm() as variables. I managed easily to define the formula >>> arguments in a variable, but I also would like to have the "subset" in a >>> variable. My reasoning is, that I have the subset in the results object. >>> >>> So I wiould like to add a line like: >>> >>> subs <- dead==FALSE & recTreat==FALSE >>> >>> which obviously does not work as the expression is evaluated >>> immediately. Is >>> is it possible to do what I want to do here, or do I have to go back >>> to use >>> >>> dat <- subset(dat, dead==FALSE & recTreat==FALSE) >>> >>> ? >>> >>> >>> >>> dat <- loadSPECIES(SPECIES) >>> feff <- height~pHarv*year # fixed effect in the model >>> reff <- ~year|plant # random effect in the model, >>> where >>> year is the >>> dat.lme <- lme( >>> fixed = feff, # fixed effect >>> in the >>> model >>> data = dat, >>> random = reff, # random effect >>> in the >>> model >>> correlation = corAR1(form=~year|plant), # >>> subset = dead==FALSE & recTreat==FALSE, # >>> na.action = na.omit >>> ) >>> dat.lm <- lm( >>> formula = feff, # fixed effect in the model >>> data = dat, >>> subset = dead==FALSE & recTreat==FALSE, >>> na.action = na.omit >>> ) >>> >>> Thanks, >>> >>> Rainer >>> >>> -- >>> Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation >>> Biology, >>> UCT), Dipl. Phys. (Germany) >>> >>> Centre of Excellence for Invasion Biology >>> Stellenbosch University >>> South Africa >>> >>> Tel : +33 - (0)9 53 10 27 44 >>> Cell: +33 - (0)6 85 62 59 98 >>> Fax : +33 - (0)9 58 10 27 44 >>> >>> Fax (D): +49 - (0)3 21 21 25 22 44 >>> >>> email: rai...@krugs.de >>> >>> Skype: RMkrug >>> >>> ______________________________________________ >>> 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. >> >> >> > > -- Eik Vettorazzi Institut für Medizinische Biometrie und Epidemiologie Universitätsklinikum Hamburg-Eppendorf Martinistr. 52 20246 Hamburg T ++49/40/7410-58243 F ++49/40/7410-57790 ______________________________________________ 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.