Why do i get tstat Inf after a linear regression?

8 ビュー (過去 30 日間)
Jefferson Sola de Haro
Jefferson Sola de Haro 2020 年 11 月 6 日
回答済み: the cyclist 2020 年 11 月 6 日
Hellow folks,
I saw that the comunity is very active so i hope someone can help me. I am writing down a simple function to estimate and evaluate the beta values for a regression, as well as its respective ANOVA.
If i run my Constraints and Effects algorithm it all works fine, but once i do a simple regression using fitlm(), i cannot evaluate the ANOVA, here is my code and what i get:
Y = [33.2 31.2
4.6 9.6
40.6 39.4
162.4 158.6];
X = [-1 -1
1 -1
-1 1
1 1 ];
Y_mean = mean(Y,2) ;
mdl = fitlm(X,Y_mean,"interactions")
mdl = Linear regression model:
y ~ 1 + x1*x2
Estimated Coefficients:
Estimate SE tStat pValue
________ __ _____ ______
(Intercept) 59.95 0 Inf NaN
x1 23.85 0 Inf NaN
x2 40.3 0 Inf NaN
x1:x2 36.4 0 Inf NaN
Number of observations: 4, Error degrees of freedom: 0
R-squared: 1, Adjusted R-Squared: NaN
F-statistic vs. constant model: NaN, p-value = NaN
With such result, of course once i call anova(mdl) the answer will be bad.
What could be the root cause?

回答 (1 件)

the cyclist
the cyclist 2020 年 11 月 6 日
The root cause is that your model is "perfect". The model is effectively
y = b1 + b2*x1 + b3*x2 + b4*x1*x2
which means you have 4 free parameters to fit 4 equations.
The estimated coefficients will perfectly fit this sample of (X, Y_mean) data. In this case, the t-statistic is infinite. Off the top of my head, I think the p-values probably is (or "approaches") 0 in this case, but again it is not very meaningful for a perfect fit.

カテゴリ

Help Center および File ExchangeAnalysis of Variance and Covariance についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by