首页 文章

计算响应与某些解释变量之间的相关性

提问于
浏览
3

我想创建一个单独的列,让我知道我的因变量与我感兴趣的所有解释变量的相关性(所有这些列和更多列存储在data.frame d中) . 通过做cor(d)我可以得到所有的相关性并通过做cor(d $ Var1,d $ Var2)我可以得到一个数字,但我想弄清楚如何从返回的矩阵中只得到Var1列cor(d),我可以选择我想要包含的解释变量 .

3 回答

  • 0

    cor函数实际上也可以这样做 . 假设我们有:

    d=data.frame(dependentVar = c(1,2,3),var1=c(-1,-2,-3),var2=c(9,0,5),junk=c(-2,-3,5))
    

    然后这将做的伎俩:

    cor(d[,"dependentVar"], d[,c("var1","var2")])
         var1       var2
    [1,]   -1 -0.4435328
    

    它的效率较低(我猜),但你也可以这样做:

    cor(d)["dependentVar", c("var1","var2")]
    

    它计算完整的相关矩阵,然后拉出你想要的子集 .

  • 4

    @DavidR是正确的,尽管R还支持X列和Y列之间的相关性:

    cor(X, Y)
    

    有关更多信息,请参见 ?cor .

  • 3
    M <- round(cor(College[,-1]),2)
    
    library('corrplot') #package corrplot
    

    如果我们想要图像而不是直接数字,我们也可以使用circle,square,eclipse而不是数字

    corrplot(M, method = "number") #plot matrix
    

    Corelation matrix

相关问题