【发布时间】:2014-04-05 16:08:08
【问题描述】:
我用外部程序 (SparCC) 创建了一个相关矩阵。我也从 SparCC 中的相同数据计算了 p 值,我最终得到了两个导入到 R 中的对象,我们称它们为 corr 和 pval 和
> ncol(corr)==nrow(corr)
[1] TRUE
> ncol(pval)==nrow(pval)
[1] TRUE
和
> colnames(corr)==rownames(pval)
[1] TRUE ...
反之亦然。
由于矩阵(或者我应该使用data.frame?)相当大(大约1000个项目),我想通过在@中查找它们的p值来从corr矩阵中提取显着相关性987654329@矩阵,我已经考虑用apply做点什么:
extracted.values <- apply(corr, nrows(corr), which(pval<0.1))
但是由于which的部分并不是真正的函数,它会输出并出错。
由于which 命令输出了 pval 矩阵中的位置列表,因此对于如何检索每个所需项目的colnames 和rownames 有点茫然。
有没有更简单的方法来做我想做的事,比如在 R 中从头开始创建一个相关对象(这可能吗?),它包含 corr 和 pval 矩阵并提取重要值?我在 Python 中找到了this solution,但是如果使用 R 的解决方案没有我想象的那么复杂,我们将不胜感激。
感谢您的帮助!
编辑:python 示例不保留标题。
【问题讨论】:
标签: r matrix extract apply correlation