Ce type de situation peut être géré par un test F standard pour les modèles imbriqués . Puisque vous souhaitez tester les deux paramètres par rapport à un modèle nul avec des paramètres fixes, vos hypothèses sont les suivantes:
H0: β = [ 01]HUNE: β ≠ [ 01] .
Le test F implique l'ajustement des deux modèles et la comparaison de leur somme des carrés résiduels, qui sont:
SSE0= ∑i = 1n( yje- xje)2SSEUNE= ∑i = 1n( yje- β^0- β^1Xje)2
La statistique de test est:
F≡ F( y , x ) = n - 22⋅ SSE0- SSEUNESSEUNE.
La valeur p correspondante est:
p ≡ p ( y , x ) = ∫F( y , x )∞F-Dist ( r | 2 , n - 2 ) d r .
Implémentation dans R: Supposons que vos données se trouvent dans une trame de données appelée DATA
avec des variables appelées y
et x
. Le test F peut être effectué manuellement avec le code suivant. Dans les données simulées simulées que j'ai utilisées, vous pouvez voir que les coefficients estimés sont proches de ceux de l'hypothèse nulle, et la valeur de p du test ne montre aucune preuve significative pour falsifier l'hypothèse nulle que la véritable fonction de régression est la fonction d'identité.
#Generate mock data (you can substitute your data if you prefer)
set.seed(12345);
n <- 1000;
x <- rnorm(n, mean = 0, sd = 5);
e <- rnorm(n, mean = 0, sd = 2/sqrt(1+abs(x)));
y <- x + e;
DATA <- data.frame(y = y, x = x);
#Fit initial regression model
MODEL <- lm(y ~ x, data = DATA);
#Calculate test statistic
SSE0 <- sum((DATA$y-DATA$x)^2);
SSEA <- sum(MODEL$residuals^2);
F_STAT <- ((n-2)/2)*((SSE0 - SSEA)/SSEA);
P_VAL <- pf(q = F_STAT, df1 = 2, df2 = n-2, lower.tail = FALSE);
#Plot the data and show test outcome
plot(DATA$x, DATA$y,
main = 'All Residuals',
sub = paste0('(Test against identity function - F-Stat = ',
sprintf("%.4f", F_STAT), ', p-value = ', sprintf("%.4f", P_VAL), ')'),
xlab = 'Dataset #1 Normalized residuals',
ylab = 'Dataset #2 Normalized residuals');
abline(lm(y ~ x, DATA), col = 'red', lty = 2, lwd = 2);
La summary
sortie et plot
pour ces données ressemblent à ceci:
summary(MODEL);
Call:
lm(formula = y ~ x, data = DATA)
Residuals:
Min 1Q Median 3Q Max
-4.8276 -0.6742 0.0043 0.6703 5.1462
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.02784 0.03552 -0.784 0.433
x 1.00507 0.00711 141.370 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.122 on 998 degrees of freedom
Multiple R-squared: 0.9524, Adjusted R-squared: 0.9524
F-statistic: 1.999e+04 on 1 and 998 DF, p-value: < 2.2e-16
F_STAT;
[1] 0.5370824
P_VAL;
[1] 0.5846198