1
我有一个三列和两行的数据集。Grep:如何使用?
1 2 3
4 5 9
我想使用“grep”命令来查找9的列号。我已经知道它将是第二行。所以:
grep(9, ds[2,])
它不起作用(即返回integer(0)
)。
但是,反过来,如果我想知道在哪个行号9,我知道列数它的工作
grep(9, de[,3])
这将返回答案2
我有一个三列和两行的数据集。Grep:如何使用?
1 2 3
4 5 9
我想使用“grep”命令来查找9的列号。我已经知道它将是第二行。所以:
grep(9, ds[2,])
它不起作用(即返回integer(0)
)。
但是,反过来,如果我想知道在哪个行号9,我知道列数它的工作
grep(9, de[,3])
这将返回答案2
grep()
在这里不合适,您可以使用数字匹配代替。如果您知道行状态和列状态,则在匹配==
之后,您可以匹配which()
。
> ds <- matrix(c(1, 2, 3, 4, 5, 9), nrow = 2)
> ds
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 9
> which(ds[2,]==9)
[1] 3
> which(ds[,3]==9)
[1] 2
如果不处理字符串,请不要使用正则表达式函数。使用which
:
m <- rbind(1:3, c(4, 5, 9))
which(m == 9, arr.ind = TRUE)
# row col
#[1,] 2 3
谢谢。我不熟悉'which'命令。 – Ashoka