r - R中不同维度数据框的相关性测试
问题描述
我在 R 中有两个数据框,每个数据框都包含从最高到最低的变量排名。这里有两个简单的例子:
卡利收入
County Income Rank
county a 46000 1
county b 29000 3
county c 33000 2
Cali_Asthma_Rates
County Diagnoses Rank
county a 0.100 4
county b 0.200 1
county c 0.150 3
county d 0.190 2
county e 0.080 5
我想看看两个县的排名之间是否有任何相关性,但是 Cali_Asthma_Rates 数据有更多变量,所以当我尝试以下操作时,我得到一个“不兼容的维度”错误:
cor(as.numeric(Cali_Asthma_Rates$Rank), as.numeric(Cali_Income$Rank), method="spearman")
有没有办法在不从 Cali_Asthma_Rates 中删除额外县的情况下找到等级之间的相关性?我基本上只是想找到任何一种统计方法来查看在 Cali_Income 中排名靠前的县是否也在 Cali_Asthma_Rates 中排名靠前。帮助将不胜感激!
解决方案
您应该首先合并两个数据框:
Cali_combined <- merge(Cali_Income, Cali_Asthma_Rates,
by = `County Name`,
suffixes = c(".Income", ".Asthma_Rate"))
head(Cali_combined)
(注意:如果有下划线或我没有看到的内容,请将 by 修复为“县名”的标题)
然后,您可以对成对的完整观察结果进行相关性分析(例如)
with(Cali_combined,
cor(Rank.Income, Rank.Asthma_Rate,
use = "pairwise.complete.obs",
method = "spearman")
)
查看?cor
要使用哪些观察的其他选项,但仅对于 2 个变量,这相当于complete.obs
.
推荐阅读
- sublimetext3 - 在 HTML 文件中输入单词“link”时 Sublime3 自动退出
- php - PHP 在某些目录中运行,但不在其他目录中
- python - NLP/文本提取
- go - 使用 goroutine 运行 cmd.Wait() 时的错误处理
- html - 具有溢出自动的元素不显示滚动条
- javascript - 无法在 html 上显示反应
- coinbase-api - 使用 coinbase pro api 出售时显示错误的价值
- javascript - 如何在wordpress的前端使用ajax保存帖子和自定义字段值?
- google-chrome-extension - chrome.storage.sync 限制与 Google Keep
- ios - 如何在 iOS 中转换时区格式?