矩阵条目上的逻辑运算符 - R.

时间:2017-06-13 07:24:19

标签: r

我有一个带有标签和数字向量的1列矩阵 我想提取矩阵中的标签,这些标签等于该向量中的一个条目,更具体地说:

> mat
                 [,1]
intercept 20.86636535  
crim      -0.23802478  
zn         0.03822050  
indus      0.05135584  
chas       2.43504780

> vec  
[1] -0.23802478  0.05135584

> mat[2, 1] == vec[1]
crim 
FALSE 

目前我第一步陷入困境。我不知道为什么它们在保持相同的数值时返回FALSE。

1 个答案:

答案 0 :(得分:0)

我使用round(as.numeric(mat[,2, drop=T]), 5) %in% round(vec, 5) ,因为可能存在浮点问题。

这样做会产生:

[1] FALSE TRUE FALSE TRUE FALSE

基本上,您需要将第二列转换为向量(使用drop = T),然后将其从字符转换为数字。舍入(在这种情况下,到5位小数)然后桥接我之前提到的浮点问题(以及David Arenburg)。

我希望能帮助你。