MathGroup Archive 2007

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

Search the Archive

Re: NonLinearRegression Weights

 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 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).

  • Prev by Date: Re: split
  • Next by Date: Re: GUIKit tool to select frames
  • Previous by thread: Re: NonLinearRegression Weights
  • Next by thread: Re: NonLinearRegression Weights