计算来自不同数据帧的两列之间R中的相关性
我想计算来自两个不同数据帧的两列的相关性 例如: 数据帧1:计算来自不同数据帧的两列之间R中的相关性,r,R,我想计算来自两个不同数据帧的两列的相关性 例如: 数据帧1: identifier description Score qzqzgz desc1 0.12 zzqzgq desc2 8.98 zzqzgg desc3 0.55 zzqzgc desc4 3.66 zzqzgz desc5 1.22 qqzgzz desc6 -30.23 zqzgzq desc6 7.88 zqzgzg desc6 6.45 zqzgzc desc6 2.3
identifier description Score
qzqzgz desc1 0.12
zzqzgq desc2 8.98
zzqzgg desc3 0.55
zzqzgc desc4 3.66
zzqzgz desc5 1.22
qqzgzz desc6 -30.23
zqzgzq desc6 7.88
zqzgzg desc6 6.45
zqzgzc desc6 2.33
zqzgzz desc6 1.02
数据框架2:
identifier description S1 S2 S3 S4 S5 S6
qzqzgz desc1 9 3 4 6 7 4
zzqzgq desc2 5 3 6 2 3 6
zzqzgg desc3 9 9 12 12 14 13
zzqzgc desc4 6 4 8 6 6 6
zzqzgz desc5 10 5 5 5 5 11
qqzgzz desc6 11 12 17 12 11 17
zqzgzq desc6 8 2 1 4 4 3
zqzgzg desc6 2 4 9 9 5 10
zqzgzc desc6 7 5 8 5 7 3
zqzgzz desc6 11 5 7 9 9 12
我想计算以下各项之间的相关性:
dataframe1的第三列(分数)和dataframe2的第三列(S1)。
dataframe1的第三列(分数)和dataframe2的第三列(S2)。
dataframe1的第三列(分数)和dataframe2的第三列(S3)。
dataframe1的第三列(分数)和dataframe2的第三列(S4)。
等等
这是我到目前为止写的:
for (i in 3:8)
{
cortop[i] <- cor(dataframe1$Score_top,dataframe2$i)
}
for(3:8中的i)
{
cortop[i]此处不需要循环:
cor(dataframe1$Score, dataframe2[-c(1:2)])
# S1 S2 S3 S4 S5 S6
# [1,] -0.555369 -0.8556331 -0.7682521 -0.629983 -0.57097 -0.6790326
顺便说一下:您的代码不起作用,因为您不能将$
与变量一起使用。因此,您必须将dataframe2$i
替换为dataframe2[[i]]
,才能访问第i列
更新:
由于dataframe2
中的值是因子,因此在使用cor
之前必须将它们转换为数值:
cor(dataframe1$Score, "storage.mode<-"(as.matrix(dataframe2[-c(1:2)]), "numeric"))
cor(dataframe1$Score,“cor(dataframe1$Score,dataframe2[-c(1:2)])中的storage.modeError:“y”必须为numeric@biobudhansapply(dataframe2[-c(1:2)],class)的结果是什么