gpt4 book ai didi

r - 如何在 R 中计算相关性

转载 作者:行者123 更新时间:2023-12-04 09:12:29 24 4
gpt4 key购买 nike

我想计算 R 中数据集 x 的子集的列之间的相关系数我有 40 行模型,每行 200 次模拟,总共 8000 行我想计算每次模拟的列之间的校正系数(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

并且您想将此数据框按 nsimul 列拆分,并计算每个组中 ab 之间的相关性。这是一个经典的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

关于r - 如何在 R 中计算相关性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6760284/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com