我想计算RI中数据集x子集的colunms之间的相关系数有40个模型的行,每个200个模拟总计8000行我想计算每个模拟的colums之间的corr系数(40行)
cor(x[c(3,5)])从
我需要的所有8000行计算,cor(x[c(3,5)])但仅在X$nsimul=1等等时计算
你能帮我解决这个问题
我不确定你到底在做什么,x[c(3,5)]但看起来你想要做如下的事情:你有一个X像这样的数据框:
set.seed(123)
X <- data.frame(nsimul = rep(1:2, each=5), a = sample(1:10), b = sample(1:10))
> X
nsimul a b
1 1 1 6
2 1 8 2
3 1 9 1
4 1 10 4
5 1 3 9
6 2 4 8
7 2 6 5
8 2 7 7
9 2 2 10
10 2 5 3
Run Code Online (Sandbox Code Playgroud)
并且您希望按nsimul列拆分此数据框,并计算每个组之间a和之间的相关性b.这是一个非常适合的经典split-apply-combine问题plyr:
require(plyr)
> ddply(X, .(nsimul), summarize, cor_a_b = cor(a,b))
nsimul cor_a_b
1 1 -0.7549232
2 2 -0.5964848
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6728 次 |
| 最近记录: |