> -----Original Message----- > From: r-help-boun...@r-project.org > [mailto:r-help-boun...@r-project.org] On Behalf Of Erik Iverson > Sent: Wednesday, October 28, 2009 9:22 AM > To: Gurpal Kalsi; r-help@r-project.org > Subject: Re: [R] Selecting rows according to a column > > Hello, > > Here's an idea: > > ifelse(z$c == "a", z$a, z$b)
If there may be many columns to select from (so the nested ifelse's become tedious) one might try > z[,-3][cbind(seq_len(nrow(z)),z$c)] [1] 1 2 30 40 50 The initial [,-3] is there only so when the data.frame is converted to a matrix by [.data.frame's processing of a matrix subscript it becomes a numeric matrix, not a character matrix. Bill Dunlap Spotfire, TIBCO Software wdunlap tibco.com > > > > -----Original Message----- > > From: r-help-boun...@r-project.org > [mailto:r-help-boun...@r-project.org] > > On Behalf Of Gurpal Kalsi > > Sent: Wednesday, October 28, 2009 11:15 AM > > To: r-help@r-project.org > > Subject: [R] Selecting rows according to a column > > > > Hi, > > > > With a data such as: > > > z = data.frame(a = 1:5, b=10*a, c = c("a", "a", "b", "b", "b") ) > > * a b c* > > *1* 10 *a* > > *2* 20 *a* > > 3 *30* *b* > > 4 *40* *b* > > 5 *50* *b* > > > > Can anyone suggest a way to select [1, 2, 30, 40, 50], > > ie. using column "c" to specify which column is selected > for each row. > > > > Many thanks > > > > G > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > 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.