计算R中3个变量之间的相关性

时间:2018-12-02 23:48:15

标签: r igraph correlation

我是R的新手,可以使用一些帮助来尝试计算三个变量之间的相关性。我正在尝试做的是看看幸福感评分指数与从一种状态转移到另一种状态的体重(人数)之间是否存在相关性。 “从”列是人们要离开的状态,而“到”列是人们要去的地方。权重是从该州迁移到新州的人数。我需要计算人们从何处移动到“ to”状态的幸福指数得分之间是否存在相关性。我希望这是有道理的,但是如果有任何问题,我可以尝试解释更多。我浏览了一些在线论坛,找不到与我的问题类似的问题,并且在编码部分需要帮助。

这是链接结构:

structure(list(from = c("Alabama", "Alabama", "Alabama", "Alabama", "Alabama", "Alabama"), to = c("Alaska", "Arizona", "Arkansas", "California", "Colorado", "Connecticut"), weight = c(423L, 894L, 2057L, 3045L, 2328L, 1102L)), row.names = c(NA, 6L), class = "data.frame")

这是节点结构:

structure(list(State = c("Hawaii", "Alaska", "South Dakota", "Maine", "Colorado", "Vermont"), Well.Being.Score = c(65.2, 64, 63.7, 63.6, 63.5, 63.5), Social.Rank = c(46L, 1L, 29L, 18L, 21L, 5L), Financial.Rank = c(1L, 2L, 3L, 10L, 19L, 39L)), row.names = c(NA, 6L), class = "data.frame")

1 个答案:

答案 0 :(得分:1)

我想说这里有几对变量的相关系数值得关注。特别是:

  • 体重与健康状态(WB)的对比
  • 重量与WB的“来自”状态
  • “到达”与“来自”的WB,
  • 重量vs.(“至”的WB-“从”的WB)。

所以我们可以从双重合并开始

m <- merge(merge(links, nodes, by.x = "to", by.y = "State"), 
           nodes, by.x = "from", by.y = "State", suff = c(".to", ".from"))

现在我们在同一位置拥有所有感兴趣的变量,并且

with(m, cor(cbind(weight, WB.from = Well.Being.Score.from, 
                  WB.to = Well.Being.Score.to,
                  WB.diff = Well.Being.Score.to - Well.Being.Score.from)))

应该返回一个有趣的相关矩阵(由于可用数据太少,此处没有输出)。