[R] how to find a row index in a matrix or a data frame ?
mirko.luedde at sap.com
Thu Nov 25 10:59:31 CET 2010
this looks pretty much a standard problem, but I couldn't find a
satisfying and understandable solution.
(A) Given a data frame (or matrix), e.g.
x <- data.frame(A=c(1, 2, 2), B=c(4, 5, 5))
and a row of this data frame, e.g.
r <- c(2, 5)
I need to find one row index i (or all such indices) such that r
is at the i-th row in x, that is, the expression
evaluates to TRUE. I can not evaluate an expression like
x[x[,1]==2 & x[,2]==5,]
because I do not know in advance how many columns x will have.
Basically, thus, I'm looking for an equivalent of "vectorfind" in
(B) Which would be the most appropriate data type for x, matrix or
data frame or another type?
(C) What will be better, searching for rows or searching for columns?
Thank you for your help!
More information about the R-help