我在 R 中创建一个情节,使用:
plot(IQ, isAtheist)
abline(lm(isAtheist~IQ))
IQ 是numeric
并且isAtheist
是布尔值,具有值TRUE
or FALSE
。
我试着写:
cor(IQ, isAtheist)
但它给了我一个错误:
Error in cor(IQ, isAtheist) : 'x' must be numeric
如何确定这两个变量之间的相关性?
我在 R 中创建一个情节,使用:
plot(IQ, isAtheist)
abline(lm(isAtheist~IQ))
IQ 是numeric
并且isAtheist
是布尔值,具有值TRUE
or FALSE
。
我试着写:
cor(IQ, isAtheist)
但它给了我一个错误:
Error in cor(IQ, isAtheist) : 'x' must be numeric
如何确定这两个变量之间的相关性?
在这种情况下,我真的不知道您想如何解释相关性,但您可以尝试cor(IQ, as.numeric(isAtheist))
. 在这种情况下,TRUE 为 1,FALSE 为 0。
这就是我认为您可能想要的(显示叠加在箱线图上的平均 IQ 值的差异):
plot(IQ~isAtheist)
lines(x=c(1,2), y=predict( lm(IQ~isAtheist),
newdata=list(isAtheist=c("NO","YES") ) ) ,
col="red", type="b")
plot.formula 默认值中的 X 位置是as.numeric(factor(isAtheist))
,即在 1 和 2 而不是在 0 和 1 ,这是您使用abline
. 推断超出这些值是没有意义的,所以我选择绘制为有界线段。我将添加一个工作示例和输出。
set.seed(123)
isAtheist=factor(c("NO","YES")[1+rep( c(0,1), 50 )])
plot(IQ~isAtheist)
lines(x=c(1,2), y=predict( lm(IQ~isAtheist),
newdata=data.frame(isAtheist=c("NO","YES") ) ) ,
col="red", type="b")