Dear R users, I am trying to extract the rownames of a data set for which each columns meet a certain criteria. (condition - elements of each column to be equal 1)
I have the correct result, however I am seeking for more efficient (desire vectorization) way in implementing such problem as it can get quite messy if there are hundreds of columns. Arbitrary data set and codes are shown below for your reference: x <- as.data.frame(matrix(round(runif(50),0),nrow=5)) rownames(x) <- letters[1:dim(x)[1]] > x V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 a 0 1 1 1 0 0 0 0 1 0 b 1 1 1 1 0 1 0 0 1 1 c 0 1 1 0 0 0 0 0 0 1 d 1 0 0 1 1 1 1 1 0 0 e 1 0 0 0 0 1 1 0 1 0 V1.ind <- rownames(x)[x[,"V1"]==1] V2.ind <- rownames(x)[x[,"V2"]==1] V3.ind <- rownames(x)[x[,"V3"]==1] V4.ind <- rownames(x)[x[,"V4"]==1] : : V10.ind <- rownames(x)[x[,"V10"]==1] > V1.ind [1] "b" "d" "e" > V2.ind [1] "a" "b" "c" > V3.ind [1] "a" "b" "c" : : > V10.ind [1] "b" "c" Your expertise in resolving this issue would be highly appreciated. Steve [[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.