Re: Weights syntax in NonlinearRegress/Fit
- To: mathgroup at smc.vnet.net
- Subject: [mg34097] Re: [mg34065] Weights syntax in NonlinearRegress/Fit
- From: BobHanlon at aol.com
- Date: Thu, 2 May 2002 03:49:49 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
In a message dated 5/1/02 9:58:10 AM, dlewis at kerr.phys.utas.edu.au writes: >It seems I have an identical problem to Frederic Fontaine dated 22 Jun >1999 that didn't get answered in the threads. > >I'm ALSO having troubles with the syntax of the Weights option in >NonlinearRegress. I want to input an equation not simply values. >I'm not a member of this list so Im not sure if this will get back to me >either... >I'd appreciate any help, for ease I have cut and pasted his eloquent >version... > > >NonlinearRegress, Weights, Syntax >Subject: [mg34097] [mg34065] [mg18212] NonlinearRegress,Weights, Syntax >From: Frederic Fontaine <F.Fontaine at fz-rossendorf.de> To: mathgroup at smc.vnet.net > >Hi, > >I've been fighting against the syntax of the option "Weights" in the >NonlinearRegress command. I want to fit large data sets and I don't want >to type hundreds of values. I'd rather use a function defining the weight >of each data points. But how to do it with Mathematica 3 for Unix? >For instance: >NonlinearRegress[dataset, fitfunction(x,para),{x},{para},Weights->{???}] >I would appreciate someone helping me remove the question marks! > >**Edited from F.F.** > Needs["Statistics`NonlinearFit`"]; data={{1.0,1.0,.126},{2.0,1.0,.219}, {1.0,2.0,.076},{2.0,2.0,.126},{.1,.0,.186}}; model = theta1 theta3 x1/(1+theta1 x1+theta2 x2); vars = {x1,x2}; params = {theta1,theta2,theta3}; BestFitParameters /. NonlinearRegress[data, model, vars, params] {theta1 -> 3.131506813950309, theta2 -> 15.159362262745494, theta3 -> 0.7800623127085422} The default (Weights -> Automatic) is equivalent to % == BestFitParameters /. NonlinearRegress[data, model, vars, params, Weights -> Table[1, {Length[data]}]] True To use a function to define the weights, just enter it as a pure function, e.g., BestFitParameters /. NonlinearRegress[data, model, vars, params, Weights ->(Sqrt[#]&)] {theta1 -> 3.000637103931437, theta2 -> 15.156127640686117, theta3 -> 0.8059628665159697} Bob Hanlon Chantilly, VA USA