【发布时间】:2010-07-30 14:09:48
【问题描述】:
我正在尝试遍历 a 矩阵并计算每两行的相关系数并打印出相关矩阵。
ID A B C D E F G H I
Row01 0.08 0.47 0.94 0.33 0.08 0.93 0.72 0.51 0.55
Row02 0.37 0.87 0.72 0.96 0.20 0.55 0.35 0.73 0.44
Row03 0.19 0.71 0.52 0.73 0.03 0.18 0.13 0.13 0.30
Row04 0.08 0.77 0.89 0.12 0.39 0.18 0.74 0.61 0.57
Row05 0.09 0.60 0.73 0.65 0.43 0.21 0.27 0.52 0.60
Row06 0.60 0.54 0.70 0.56 0.49 0.94 0.23 0.80 0.63
Row07 0.02 0.33 0.05 0.90 0.48 0.47 0.51 0.36 0.26
Row08 0.34 0.96 0.37 0.06 0.20 0.14 0.84 0.28 0.47
........
(30000 rows!)
我希望 Pearson 相关输出为:
Row01
Row01 1.000
Row02 0.012
Row03 0.023
Row04 0.820
Row05 0.165
Row06 0.230
Row07 0.376
Row08 0.870
输出为 Row01.txt
Row02
Row01 0.012
Row02 1.000
Row03 0.023
Row04 0.820
Row05 0.165
Row06 0.230
Row07 0.376
Row08 0.870
输出为 Row02.txt。 . . . .
输出文件将是 30000 个!
我知道这个算法看起来很愚蠢,matrix<-cor(T(data)) 将完成整个事情,并且 corr 矩阵的一半就足够了,因为 corr 结果沿对角线对称。
但我的问题是
- 我的数据太大,R 无法处理 30000x30000。
- 很难检索特定行与其余行的特定相关性。
- 使用我的“愚蠢算法”,我可以轻松地从文件夹中获取我感兴趣的 corr。
【问题讨论】: