mdl object: put "F-statistic vs. constant model: ... , p-value = ..." into variable

3 views (last 30 days)
fitlm() displays, among other things, the F-statistic and p-value for the fit as a whole. I can't find these values in the mdl object, however. Could someone point me to how I can find, or calculate this value using the data in the mdl object?

Answers (2)

gusjammo
gusjammo on 8 Sep 2015
Hello Evan, I think that you may be able to do it with coefTest(mdl), although this defaults to a horizontal line along the x-axis, so you might have to override the default with the average y-value, for instance.
  1 Comment
fateme
fateme on 9 Jan 2022
Hi the question is for long time ago but maybe this answer helps others. Yes as Gusjammo said based on the help of Matlab this works:
[p,F] = coefTest(mdl)
However for me,this function gives NaN inspite of showing values of p , F by typing 'mdl'.

Sign in to comment.


the cyclist
the cyclist on 20 Aug 2015
I'm not sure it is very well documented, but if you type
mdl.
at the command line, you will see the list what is included in the model object.
The P-values are
mdl.Coefficients.pValue
or
mdl.anova.pValue
and the F-stat is
mdl.anova.F
  4 Comments
Evan
Evan on 20 Aug 2015
Edited: Evan on 20 Aug 2015
It is curious though that anova seems to be a property of the mdl object, yet it's not listed when you call the function properties(mdl)... Typing "mdl." in the command line for me just returns an error: "Error: Expression or statement is incomplete or incorrect."
the cyclist
the cyclist on 20 Aug 2015
I misspoke when I said to enter "mdl." in the command window. What you should do is type "mdl." without hitting Enter, and then hit Tab to see the possible completions of that. Then you will see things like Coefficients, etc.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!