我有来自10个人的两个数据集。一个是向量,另一个是矩阵。我想要看到的是向量的第一个元素是否包含在矩阵的第一行中,第二个元素是否包含在矩阵的第二行中,以此类推。
因此,我将向量转换为矩阵,并使用
以下是数据集。
然而,结果必须全部为
因此,我将向量转换为矩阵,并使用
apply
按行进行比较。但结果并不正确。以下是数据集。
df1<-matrix(c(rep(0,10),2,4,7,6,5,7,4,2,2,2),ncol=2)
df1
# [,1] [,2]
# [1,] 0 2
# [2,] 0 4
# [3,] 0 7
# [4,] 0 6
# [5,] 0 5
# [6,] 0 7
# [7,] 0 4
# [8,] 0 2
# [9,] 0 2
#[10,] 0 2
df2<-c(1,3,6,4,1,3,3,2,2,5)
df2<-as.matrix(df2)
apply(df2, 1, function(x) any(x==df1))
# [1] FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE TRUE TRUE
然而,结果必须全部为
FALSE
,除了第8和第9个。
有人能够更正这个函数吗?谢谢!
Error in df1 == df2 : non-conformable arrays
,你知道为什么吗? - slamballaisas.logical(rowSums(df1==as.numeric(df2)))
应该可以工作。 - Karolis Koncevičius