繁体   English   中英

来自不同数据集的两个对应列之间的相关性

[英]Correlation between two corresponding columns from seperate datasets

我有两组数据,其中包含名称相同但这些列中的值不同的列。 例如:

m1 <- matrix(1:9, nrow = 3, ncol = 3, byrow = TRUE,
             dimnames = list(c("s1", "s2", "s3"),c("cow", "dog","cat")))
m2 <- matrix(1:9, nrow = 3, ncol = 3, byrow = FALSE,
             dimnames = list(c("s1", "s2", "s3"),c("dog", "cow","cat")))
> m1
   cow dog cat
s1   1   2   3
s2   4   5   6
s3   7   8   9
> m2
   dog cow cat
s1   1   4   7
s2   2   5   8
s3   3   6   9

我想使用cor.test()创建一个函数来计算对应列之间的相关性。 例如牛与牛,狗与狗。 使用cor.test()的原因是我想获得相关系数和p值。 因此,如果还有其他方法可以获取这些信息,我也欢迎那些人。 实际的数据集具有成千上万的列,这些列是随机组织的,因此我正在寻找一种首先匹配列然后计算相关性的方法。 有任何想法吗?

这是在常见列上使用lapply的解决方案:

# Common columns
cols <- intersect(colnames(m1), colnames(m2))

# For each column, compute cor test
res <- lapply(cols, function(x) cor.test(
  m1[, x],
  m2[, x]
))

names(res) <- cols

结果是可以通过这种方式访问​​的htest对象的列表: res[["cow"]]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM