r-如何在匹配数据帧和向量的行时提取列索引



假设我有一个这样的字母数据帧:

X1 X2 X3
1  G  A  C
2  G  T  C
3  G  T  C
4  A  T  G
5  A  C  G

一个向量是这样的:ref <- c("A", "C", "C", "A", "G")

从行的角度来看,如何提取与向量匹配的数据帧的列索引?

所以答案应该是一个数字向量,如下所示:2, 3, 3, 1, 3

我们可以使用

max.col(df1 == ref)
#[1] 2 3 3 1 3

数据

df1 <- structure(list(X1 = c("G", "G", "G", "A", "A"), X2 = c("A", "T", 
"T", "T", "C"), X3 = c("C", "C", "C", "G", "G")), class = "data.frame",
row.names = c("1", 
"2", "3", "4", "5"))

最新更新