On Fri, 29 Aug 2003, Dowkiw, Arnaud wrote: > Hi Francisco, > > what I would do : > > names(X)[c(5,10)]<-c("Age","Gender") > > Xnew1<-X[X$Gender==1 & X$Age>=18 & X$Age <=40,] > > Xnew2<-X[X$Gender==0 & X$Age>=20 & X$Age <=30,] > > Xnew<-rbind(Xnew1,Xnew2) > > But there must be something more elegant,
How about set1 <- with(X, Gender==1 & Age>=18 & Age <=40) set2 <- with(X, Gender==0 & Age>=20 & Age <=30) Y <- X[set1 | set 2, ] > -----Original Message----- > From: Francisco J. Bido [mailto:[EMAIL PROTECTED] > Sent: Friday, 29 August 2003 4:10 PM > To: [EMAIL PROTECTED] > Subject: [R] Creating a new table from a set of constraints > > > Hi Everyone, > > Here's a silly newbie question. How do I remove unwanted rows from an > R table? Say that I read my data as: > > X <- read.table("mydata.txt") > > and say that there are columns for age and gender. Call these X[5] and > X[10], respectively. > Here, X[5] is a column of positive integers and X[10] is binary valued > i.e., zero (for male) and one (for female) > > Now, say that I want to form a new table called Y which has the > following constraints: > > 1. Only females that are between 18 and 40 years old. > 2. Only males that are between 20 and 30 years old > > I can do this using a typical procedural approach (no different than C > programmer would) but it seems > to me that R has many shortcuts and so I thought I ask first before > heading on an inefficient path. What's > a good way of doing this, my data set is very large? > > Thanks, > -Francisco > > ______________________________________________ > [EMAIL PROTECTED] mailing list > https://www.stat.math.ethz.ch/mailman/listinfo/r-help > > ********************************DISCLAIMER******************...{{dropped}} > > ______________________________________________ > [EMAIL PROTECTED] mailing list > https://www.stat.math.ethz.ch/mailman/listinfo/r-help > > -- Brian D. Ripley, [EMAIL PROTECTED] Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595 ______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help