r - 使用 pwr 和 R 进行多元回归的功效分析

标签 r linear-regression

我想确定在与其他协变量的多元回归中检测两个连续变量(缩放)的交互作用项的影响所需的样本量。

我们发现了以前较小的研究失败的效果。这些影响很小,但一位审稿人要求我们说以前的研究可能效力不足,并提供一些措施来支持这一点。

我使用的是pwr包中的pwr.f2.test()函数,如下:

pwr.f2.test(u = nominator, v = denominator, f2 = effect size, sig.level = 0.05, power = 0.8),分母我设置为 NULL 这样我就可以获取样本量。

这是我从 summary() 输出的模型:

                   Estimate Std. Error t value Pr(>|t|)    
(Intercept)        -21.2333    20.8127   -1.02  0.30800    
age                  0.0740     0.0776    0.95  0.34094    
wkdemand             1.6333     0.5903    2.77  0.00582 ** 
hoops                0.8662     0.6014    1.44  0.15028    
wtlift               5.2417     1.3912    3.77  0.00018 ***
height05             0.2205     0.0467    4.72  2.9e-06 ***
amtRS                0.1041     0.2776    0.37  0.70779    
allele1_numS        -0.0731     0.2779   -0.26  0.79262    
amtRS:allele1_numS   0.6267     0.2612    2.40  0.01670 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 7.17 on 666 degrees of freedom
Multiple R-squared:  0.0769,    Adjusted R-squared:  0.0658 
F-statistic: 6.94 on 8 and 666 DF,  p-value: 8.44e-09

模型效应大小估计来自 lmSupport 包中的 modelEffectSizes() 函数:

Coefficients
                         SSR df pEta-sqr dR-sqr
(Intercept)          53.5593  1   0.0016     NA
age                  46.7344  1   0.0014 0.0013
wkdemand            393.9119  1   0.0114 0.0106
hoops               106.7318  1   0.0031 0.0029
wtlift              730.5385  1   0.0209 0.0197
height05           1145.0394  1   0.0323 0.0308
amtRS                 7.2358  1   0.0002 0.0002
allele1_numS          3.5599  1   0.0001 0.0001
amtRS:allele1_numS  296.2219  1   0.0086 0.0080

Sum of squared errors (SSE): 34271.3
Sum of squared total  (SST): 37127.3

问题:

我在 pwr.f2.test() 的 f2 槽中放入什么值?我认为分子将为 1,我应该使用 modelEffectSizes() 中的 pEta-sqr,所以在这种情况下为 0.0086?

此外,我得到的估计样本量通常比我们的样本量 675 大得多 - 这是否意味着我们“幸运”地获得了显着影响(我们只会在 50% 的时间内检测到它们,给定效应量)?请注意,我对不同事物的多种测量都指向同一个发现,所以我对此比较满意。

最佳答案

我应该在 pwr.f2.test() 的 f2 槽中放入什么值?

对于每个 pwr 函数,您输入四个数量中的三个(效果大小样本大小显着性水平, power) 和第四个将被计算 (1)。在pwr.f2.test中,uv分别是分子和分母的自由度。并且 f2 用作效果大小度量。 例如,您将在其中放置一个效应量 估计值。

pEta-sqr 是否是要使用的正确“效应大小”?

现在,有许多不同的效果大小度量。 Pwr 专门使用 Cohen 的 F 2,它与 pEta-sqr 不同,所以我不推荐它。

我可以使用哪种效果量度?

正如@42- 提到的,您可以尝试使用 delta-R2 效果,它在您的输出变量中被标记为“dR-sqr”。您可以使用 Cohen 的 f 2 测量局部效应大小的变体来做到这一点,Selya 等人(2012 年)对此进行了描述。它使用以下等式:

f^2=(R^2(AB)-R^2(A))/(1-R^2(AB))

等式中,B是感兴趣的变量,A是所有其他变量的集合,R2AB AB 一起解释的方差比例(相对于没有回归变量的模型),R²AA 所占的方差比例(相对于没有回归变量的模型)。我会按照@42-的建议去做——例如构建两个模型,一个有交互作用,一个没有交互作用,并使用它们的 delta-R2 效应大小。

重要的是,正如 @42- 正确指出的那样,如果审稿人问您之前的研究是否功效不足,您需要使用这些研究的样本量来进行任何功效计算。如果您使用自己研究的参数,首先您已经知道答案——您确实有足够的能力检测差异,其次,您是事后做的,这听起来也不正确。

  1. > https://www.statmethods.net/stats/power.html
  2. Selya 等人,2012 年:计算科恩 f2 的实用指南,一种局部效应大小的度量,来自 PROC MIXED。 前沿心理学。 2012;3:111。

关于r - 使用 pwr 和 R 进行多元回归的功效分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41928471/

相关文章:

r - 使用单元素向量从命名列表中选择输入

r - 根据观察复制和修改数据帧的行 [R]

r - 强制某些参数在 lm() 中具有正系数

r - lm预测不会预测

python - OLS 与 Pandas : datetime index as predictor

regex - R从字符串中提取项目

R - 绘制随机有序样本

使用 R 中的直接标签库重新排列 ggplot 散点图的标签

r - 如何估计一系列线性段以拟合指数曲线?

python - sklearn LinearRegression.Predict() 问题