Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

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

Search the Archive

Re: Model fitting

  • To: mathgroup at smc.vnet.net
  • Subject: [mg128793] Re: Model fitting
  • From: Ray Koopman <koopman at sfu.ca>
  • Date: Sun, 25 Nov 2012 23:26:57 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-newout@smc.vnet.net
  • Delivered-to: mathgroup-newsend@smc.vnet.net
  • References: <k8nc4m$dfl$1@smc.vnet.net> <k8psuu$irk$1@smc.vnet.net> <k8sq8b$onc$1@smc.vnet.net>

On Nov 25, 2:03 am, Dmitry Zinoviev <dzinov... at gmail.com> wrote:
> On Saturday, November 24, 2012 2:30:51 AM UTC-5, Ray Koopman wrote:
>> On Nov 23, 12:31 am, dzinov... at gmail.com wrote:
>>
>>> I have an array of 3D data in the form {xi,yi,0/1} (that is, the z coordinate is either 0 or 1). The points are not on a rectangular grid. The 0 and 1 areas are more or less contiguous, though the boundary between them can be somewhat fuzzy. The boundary is expected to be described by the equation y=a x^b. How can I adapt NonlinearModelFit or any other standard function to find the best fit values for a and b? Thanks!
>>
>> y = a x^b is linear in log-log coordinates, so use LogitModelFit
>> with Log@x and Log@y as the predictors; i.e., the probability of
>> observing z == 1 is 1/(1 + Exp[-(b0 + b1*Log@x + b2*Log@y)]).
>
> Than you! I assume that b=b2/b1. How do I calculate a?

The boundary is the curve for which prob[z == 1] == 1/2:

  Solve[1/(1 + Exp[-(b0 + b1*Log@x + b2*Log@y)]) == 1/2, y]

  y -> E^(-b0/b2) x^(-b1/b2)



  • Prev by Date: Re: How Can I Make A String Variable With Styled Text?
  • Next by Date: Re: Mathematica 8 Serial Port Comm.
  • Previous by thread: Re: Model fitting
  • Next by thread: Delay DAEs