Re: NonLinearRegression Weights
- To: mathgroup at smc.vnet.net
- Subject: [mg73626] Re: [mg73584] NonLinearRegression Weights
- From: Darren Glosemeyer <darreng at wolfram.com>
- Date: Fri, 23 Feb 2007 04:38:09 -0500 (EST)
- References: <200702220937.EAA24446@smc.vnet.net>
From the message it appears that the weights were given as a list of
single element lists. Numeric weights must be given as a vector (a flat
list) of numbers. Using Weights->Flatten[wt] should do what you want.
Darren Glosemeyer
Wolfram Research
pershan at seas.harvard.edu wrote:
> I am trying to add Weights to NonlinearRegression Fit.
> The relevant section of Mathematica Help (Statistics `NonlinearFit` )
> is as follows
>
> The Weights option allows you to implement weighted least
> squares by specifying a list of weights, one for each data point; the
> default Weights -> Automatic implies a weight of unity for each data
> point. When Weights -> {a, ... , a}, the parameter estimates are chosen
> to minimize the weighted sum of squared residuals a.
>
> The command I am using is:
> fitting[x_] = NonlinearFit[data, f[x], {x}, {
> {Background, {0, 1000}},
> {Amplitude, {10, 0}},
> {Wid, {10, 25}}}, Weights -> wt]
> where wt is a column vector that has precisely the same length as the
> data file.
> This command works perfectly if I use either Weights->Automatic or
> something like Weights -> (Sqrt[#] &)
> On the other hand, when the weights are from a list {....} I get the
> following error.
>
> NonlinearFit::bdwghts: Warning: Value of option Weights ->
> {{0.00322435}, \
> {0.00359912}, \[LeftSkeleton]8\[RightSkeleton], \[LeftSkeleton]31\
> \[RightSkeleton]} is not Automatic, a pure function mapping a
> response to a \
> non-negative numerical weight, or a non-negative numerical vector
> having the \
> same length as the data. Setting all weights to 1 (Weights ->
> Automatic).
>
>
- References:
- NonLinearRegression Weights
- From: pershan@seas.harvard.edu
- NonLinearRegression Weights