Re: statistical comparison of parameters from two applications of NonlinearModelFit
- To: mathgroup at smc.vnet.net
- Subject: [mg116106] Re: statistical comparison of parameters from two applications of NonlinearModelFit
- From: "Hobbs, Sylvia (DPH)" <Sylvia.Hobbs at state.ma.us>
- Date: Wed, 2 Feb 2011 06:08:54 -0500 (EST)
The question isn't silly but pretending to be good at Mathematica is. I'm just being silly. :) ________________________________________ From: mathgroup-adm at smc.vnet.net [mathgroup-adm at smc.vnet.net] On Behalf Of dantimatter [google at dantimatter.com] Sent: Tuesday, February 01, 2011 6:54 AM To: mathgroup at smc.vnet.net Subject: [mg116106] [mg116084] statistical comparison of parameters from two applications of NonlinearModelFit Hello Everyone, First, I must apologize if the following questions are silly; I am neither a statistician nor a particularly good Mathematica user (although I do occasionally pretend to be one). And now, on the question: I've got some data that I try to fit with NonlinearModelFit: time1 == {0, 100, 200, 300, 400, 500, 600, 700, 800}; data1 == {1, 0.92, 0.79, 0.81, 0.81, 0.78, 0.72, 0.75, 0.68}; nlm1== NonlinearModelFit[Transpose[{time1, data1}], a1*Exp[-b1*x] + c1, {{a1, .5}, {b1, 0.001}, {c1, 0.5}}, x, ConfidenceLevel -> .95] with results: In[11] :== nlm1["BestFitParameters"] nlm1["ParameterConfidenceIntervals"] nlm1["ParameterErrors"] Out[11] == {a1 -> 0.295575, b1 -> 0.00334141, c1 -> 0.696761} Out[12] == {{0.179807, 0.411344}, {-0.000284765, 0.00696758}, {0.582507, 0.811014}} Out[13] == {0.0473121, 0.00148194, 0.0466929} I then do the same thing on a second data set: time2 == {0, 100, 200, 300, 400, 500}; data2 == {0.8, 0.73, 0.65, 0.61, 0.58, 0.57}; nlm2== NonlinearModelFit[Transpose[{time2, data2}], a2*Exp[-b2*x] + c2, {{a2, .5}, {b2, 0.001}, {c2, 0.5}}, x, ConfidenceLevel -> .95] In[15]:== nlm2["BestFitParameters"] nlm2["ParameterConfidenceIntervals"] nlm2["ParameterErrors"] Out[15] == {a2 -> 0.287834, b2 -> 0.00362383, c2 -> 0.516796} Out[16] == {{0.204254, 0.371413}, {0.00121124, 0.00603641}, {0.427572, 0.60602}} Out[17] == {0.0262627, 0.000758091, 0.0280362} Based on our understanding of the real system, we actually expect b2 <== b1, but this not what the fitting tells us (of course, there's a bit of error in the extracted parameters). So what I'd really like to know is: (1) how can I make sense of these "ParameterConfidenceIntervals" and "ParameterErrors" (how are they determined, and what is meant by them, beyond their brief description in http://reference.wolfram.com/mathematica/tutorial/StatisticalModelAnalysis.= html)? and (2) is there a way to establish some kind of upper limit on the detectability of the difference between b2 and b1? Any thoughts you might have would be most appreciated. Many thanks!