如何在 r 中执行 wald 测试
Wald 检验可用于测试模型的一个或多个参数是否等于特定值。
此检验通常用于确定回归模型中的一个或多个预测变量是否等于零。
我们在此测试中使用以下原假设和备择假设:
- H 0 :某些预测变量集全部等于零。
- H A :并非集合中的所有预测变量都等于 0。
如果我们无法拒绝原假设,那么我们可以从模型中删除指定的预测变量集,因为它们不会在模型拟合方面提供统计上显着的改进。
以下示例显示如何在 R 中执行 Wald 测试。
示例:R 中的 Wald 测试
对于本示例,我们将使用 R 中内置的mtcars数据集来拟合以下多元线性回归模型:
mpg = β 0 + β 1可用 + β 2碳水化合物 + β 3马力 + β 4汽缸
以下代码显示了如何拟合此回归模型并显示模型摘要:
#fit regression model model <- lm(mpg ~ disp + carb + hp + cyl, data = mtcars) #view model summary summary(model) Call: lm(formula = mpg ~ disp + carb + hp + cyl, data = mtcars) Residuals: Min 1Q Median 3Q Max -5.0761 -1.5752 -0.2051 1.0745 6.3047 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 34.021595 2.523397 13.482 1.65e-13 *** available -0.026906 0.011309 -2.379 0.0247 * carb -0.926863 0.578882 -1.601 0.1210 hp 0.009349 0.020701 0.452 0.6551 cyl -1.048523 0.783910 -1.338 0.1922 --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 2.973 on 27 degrees of freedom Multiple R-squared: 0.788, Adjusted R-squared: 0.7566 F-statistic: 25.09 on 4 and 27 DF, p-value: 9.354e-09
接下来,我们可以使用aod包中的wald.test()函数来测试预测变量“hp”和“cyl”的回归系数是否都等于 0。
该函数使用以下基本语法:
Wald.test(西格玛,b,术语)
金子:
- Sigma :回归模型的方差-协方差矩阵
- b :模型回归系数向量
- 术语:指定要测试的系数的向量
下面的代码展示了如何在实际中使用这个函数:
library (aod) #perform Wald Test to determine if 3rd and 4th predictor variables are both zero wald. test (Sigma = vcov(model), b = coef(model), Terms = 3:4) Wald test: ---------- Chi-squared test: X2 = 3.6, df = 2, P(>X2) = 0.16
从结果中,我们可以看到检验的p 值为0.16。
由于该 p 值不小于 0.05,因此我们无法拒绝 Wald 检验的原假设。
这意味着我们可以假设预测变量“hp”和“cyl”的回归系数均为零。
我们可以从模型中删除这些项,因为它们在统计上不会显着改善整体模型拟合。
其他资源
以下教程解释了如何在 R 中执行其他常见操作:
如何在 R 中执行简单线性回归
如何在 R 中执行多元线性回归
如何解释 R 中的回归输出
如何在 R 中计算方差膨胀因子 (VIF)