MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

FittedModel Objects... How does Mathematica do it?


LinearModelFit (and similar statistical functions) are documented with
examples such as:

data = {{0, 1}, {1, 0}, {3, 2}, {5, 4}};
lm = LinearModelFit[data, x, x]

which returns a FittedModel 'object'. One can then execute code such
as lm["FitResiduals"] or lm["RSquared"] to retrieve the properties one

1. How exactly does Mathematica generate/store the objects associated
with the head 'lm'?!? I'd *really* appreciate a simple example of how
to do this and/or some tips on when/how to use more complicated head

2. And taking that one step further, how does Mathematica generate/
store additional info, such as 'Descriptions' on specific properties?
For example, lm["ParameterErrors", "LongDescription"], returns
"standard errors for parameter estimates".

3. Does Mathematica immediately calculate and store all these
lm{"objects"], or are they generated (where appropriate) only when
requested? (And is this really OOP? <-- not intended to start an OOP
flame war!)

4. (Possibly related, so I figured I'd include it...) How does
Mathematica store all the metadata available on example data sets?---
Is there documentation on how to conform to this standard/approach?
For instance: ExampleData[{"Matrix","FIDAP007"}, "Properties"]. (on
second thought, I guess this is probably stored in some standard file
format, hidden from view...)

Thanks for any info and guidance you can provide,


  • Prev by Date: Having some trouble with plot and solve
  • Next by Date: FindInstance does not abort with TimeConstrained
  • Previous by thread: Re: Having some trouble with plot and solve
  • Next by thread: Re: FittedModel Objects... How does Mathematica do it?