Вы получаете F-тест в этом примере, потому что, как указано в виньетке:
Метод для объектов "lm" вызывает метод по умолчанию, но он меняет тест по умолчанию на "F" [ ...]
Вы также можете установить тест на F, но в основном линейная гипотеза работает всякий раз, когда стандартная ошибка коэффициента может быть оценена из матрицы дисперсии-ковариации, как также сказано в виньетке:
Метод по умолчанию будет работать с любым объектом модели, для которого вектор коэффициентов может быть получен с помощью 'coef', а матрица коэффициентов-ковариаций - с помощью 'vcov' (в противном случае аргумент 'vcov.' Должен устанавливается явно)
Итак, используя пример из пакета:
library(plm)
data(Grunfeld)
wi <- plm(inv ~ value + capital,
data = Grunfeld, model = "within", effect = "twoways")
linearHypothesis(wi,"capital=0.3",test="F")
Linear hypothesis test
Hypothesis:
capital = 0.3
Model 1: restricted model
Model 2: inv ~ value + capital
Res.Df Df F Pr(>F)
1 170
2 169 1 6.4986 0.01169 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
linearHypothesis(wi,"capital=0.3")
Linear hypothesis test
Hypothesis:
capital = 0.3
Model 1: restricted model
Model 2: inv ~ value + capital
Res.Df Df Chisq Pr(>Chisq)
1 170
2 169 1 6.4986 0.0108 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
И вы также можете использовать t.test:
tested_value = 0.3
BETA = coefficients(wi)["capital"]
SE = coefficients(summary(wi))["capital",2]
tstat = (BETA- tested_value)/SE
pvalue = as.numeric(2*pt(-tstat,wi$df.residual))
pvalue
[1] 0.01168515