如何查找表中的所有匹配项?

时间:2015-10-03 08:53:52

标签: r match

我知道这个功能

match(x, dataset)

但是只显示找到的匹配的第一个位置,我需要指定表中的哪个列才能获得结果。所以,如果有这样的表

   x1  x2   ...
1   3   1   ...
2   4   2   ...
3   1   1   ...
4   2   4   ...

如何找到所有数字1的位置? 我想分别得到行号和列号。像上面例子的结果应该是1,3(行)和x1,x2(列)。

1 个答案:

答案 0 :(得分:2)

dat == 1将为您提供一个矩阵,其中位置等于1,而TRUE则为FALSE

此外,您可以使用{{1}找到符合条件的元素的rowcolumn位置(在这种情况下,等于一个是TRUE) }和which参数。

您的数据

arr.ind

提取数据等于1的位置

dat <- read.table(header=TRUE, text=
  "x1  x2   
1   3   1   
2   4   2   
3   1   1   
4   2   4 ")