根据r中的字符串关联数据框中的项目
Correlate item in dataframe based on character string in r
我目前有数据集 newdat,这是一个包含项目分数的数据框:
set.seed(1)
newdat <- setNames(data.frame(replicate(5,sample(1:5,10,replace=TRUE))),paste0("i",1:5))
i1 i2 i3 i4 i5
1 2 2 5 3 5
2 2 1 2 3 4
3 3 4 4 3 4
4 5 2 1 1 3
5 2 4 2 5 3
6 5 3 2 4 4
7 5 4 1 4 1
8 4 5 2 1 3
9 4 2 5 4 4
10 1 4 2 3 4
我还有字符串"newCV"和"newDV",它们是:
newCV <- c("i3","i2")
newDV <- c("i1")
我试图将 DV 与除它本身以外的所有项目以及 newCV 中包含的项目相关联。我尝试了以下方法:
corr<-cor(newdat,use="complete.obs")[-which(colnames(newdat)==c(newCV,newDV)),which(colnames(newdat)==c(newCV,newDV))]
如果在 CV 中找不到任何内容,这会起作用,但如果在 CV 中找到某些内容,我会收到错误消息并且没有结果。有什么想法吗?谢谢!
如果您只想计算特定的相关性,您可以select将哪些列传递给cor
cor(newdat[newDV], newdat[!(names(newdat) %in% c(newCV, newDV))],
use="complete.obs")
我目前有数据集 newdat,这是一个包含项目分数的数据框:
set.seed(1)
newdat <- setNames(data.frame(replicate(5,sample(1:5,10,replace=TRUE))),paste0("i",1:5))
i1 i2 i3 i4 i5
1 2 2 5 3 5
2 2 1 2 3 4
3 3 4 4 3 4
4 5 2 1 1 3
5 2 4 2 5 3
6 5 3 2 4 4
7 5 4 1 4 1
8 4 5 2 1 3
9 4 2 5 4 4
10 1 4 2 3 4
我还有字符串"newCV"和"newDV",它们是:
newCV <- c("i3","i2")
newDV <- c("i1")
我试图将 DV 与除它本身以外的所有项目以及 newCV 中包含的项目相关联。我尝试了以下方法:
corr<-cor(newdat,use="complete.obs")[-which(colnames(newdat)==c(newCV,newDV)),which(colnames(newdat)==c(newCV,newDV))]
如果在 CV 中找不到任何内容,这会起作用,但如果在 CV 中找到某些内容,我会收到错误消息并且没有结果。有什么想法吗?谢谢!
如果您只想计算特定的相关性,您可以select将哪些列传递给cor
cor(newdat[newDV], newdat[!(names(newdat) %in% c(newCV, newDV))],
use="complete.obs")