paired.r功能 - 正确的自由度?

时间:2018-03-31 17:58:31

标签: r statistics

我有一个数据集,我在其中测试两个依赖关联之间的显着差异。例如,我检查了变量X和Z(corXZ)之间以及变量Y和Z(corYZ)之间的相关性,并且还想知道corXZ和corYZ是否显着不同,考虑到X和Y之间的相关性(corXY) 。

我一直在使用R函数paired.r,它通常效果很好。但是,正如您所看到的,它不提供输出的自由度,只是一个t值:

https://www.rdocumentation.org/packages/psych/versions/1.7.8/topics/paired.r

为了在手稿中报告此类测试,我需要提供准确的自由度。我如何找到或计算出来?

1 个答案:

答案 0 :(得分:1)

对于指定了第三个(yz)相关性的测试,自由度为= n-3:

> # install.packages("psych")
> library(psych)
> 
> n = 100
> paired.r(.5,.3, .4, n = n)
Call: paired.r(xy = 0.5, xz = 0.3, yz = 0.4, n = n)
[1] "test of difference between two correlated  correlations"
t = 2.06  With probability =  0.04

> 2 * pt(q = 2.06, df = n-3, lower.tail = F) # 2 tailed p value
[1] 0.04207664


> n = 10
> paired.r(.5,.3, .4, n = n)
Call: paired.r(xy = 0.5, xz = 0.3, yz = 0.4, n = n)
[1] "test of difference between two correlated  correlations"
t = 0.56  With probability =  0.6

> 2 * pt(q = 0.56, df = n-3, lower.tail = F)
[1] 0.5929396
> 

R这样的开源软件的好处在于你总是可以检查源代码来回答这类问题。在这里,您只需在控制台中键入paired.r(无括号)即可获得源代码...