Re: Creating Objects

• To: mathgroup at smc.vnet.net
• Subject: [mg122302] Re: Creating Objects
• From: Armand Tamzarian <mike.honeychurch at gmail.com>
• Date: Mon, 24 Oct 2011 05:14:04 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• References: <j80qhd\$afd\$1@smc.vnet.net>

```On Oct 23, 9:33 pm, Gabriel Landi <gtla... at gmail.com> wrote:
> Dear MathGroup (and perhaps some Wolfram employees),
>
> Does anyone know how to create Objects in Mathematica, such as those produced by LinearModelFit or NDSolve`ProcessEquations?
> For instance, let data be a set of statistical data. Then data["Mean"] would give me the mean, data["Values"] would return me the original values, etc.
>
> Here is an example from LinearModelFit:
>
>         data = {{0, 1}, {1, 0}, {3, 2}, {5, 4}};
>         lm = LinearModelFit[data, x, x];
>         Save["Model.txt",lm];
>
> The saved output is
>
> lm = FittedModel[{"Linear", {0.18644067796610198, 0.6949152542372881},
>       {{x}, {1, x}}, {0, 0}}, {{1., 1., 1., 1.}}, {{0, 1}, {1, 0}, {3, 2},
>       {5, 4}}, {{1., 0.}, {1., 1.}, {1., 3.}, {1., 5.}},
>      Function[Null, Internal`LocalizedBlock[{x}, #1], {HoldAll}]]
>
> Which has, basically, only the data and the fitted parameters. Nonetheless, by doing lm["FitResiduals"] it computes the residuals for me.
>
> In my impression, this is as close as one can get to object-oriented programming in Mathematica, and would be a quite useful feature to use.
> I haven't found any documentation on this. Anyone knowns?
>
> Sincerely,
>
> Gabriel Landi

Darren Glosemeyer provided some info on how to do this