I think you need an I(), i.e., form <- ~ I(a > 1) - 1
I hope it helps. Best, Dimitris On 8/26/2010 9:17 AM, Niels Richard Hansen wrote:
I have the following problem mydata <- data.frame(a=1:3) form <- ~ (a>1) - 1 model.matrix(form,mydata) a > 1FALSE a > 1TRUE 1 1 0 2 0 1 3 0 1 ... However model.matrix(update(terms(form)[1],~.-1),mydata) (Intercept) a > 1 - 1TRUE 1 1 1 2 1 1 3 1 1 ... Taking terms(form)[1] extracts the formula with only the first term, but the parentheses are thrown away, and after the update, I get a different formula. Is that supposed to be so? Thanks, Niels
-- Dimitris Rizopoulos Assistant Professor Department of Biostatistics Erasmus University Medical Center Address: PO Box 2040, 3000 CA Rotterdam, the Netherlands Tel: +31/(0)10/7043478 Fax: +31/(0)10/7043014 ______________________________________________ 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.