[R] how to find a row index in a matrix or a data frame ?
Luedde, Mirko
mirko.luedde at sap.com
Thu Nov 25 10:59:31 CET 2010
Dear all,
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
all(x[i,]==as.list(r))
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
Scilab.
(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!
Best, Mirko
More information about the R-help
mailing list