Re: FindFit power law problem

• To: mathgroup at smc.vnet.net
• Subject: [mg117035] Re: FindFit power law problem
• From: DrMajorBob <btreat1 at austin.rr.com>
• Date: Tue, 8 Mar 2011 05:35:43 -0500 (EST)

```data = {{1004, 0.003977}, {9970, 0.006494}, {100000,
0.012921}, {1001000, .059795}};

Clear[f]
f[x_] = a x^b /. FindFit[data, a x^b, {a, b}, x]

0.0000145749 x^0.601807

Clear[g, h]
g[x_] = Fit[Log[10, data], {1, x}, x]
h[x_] = 10^g@Log[10, x]

-3.64936 + 0.383174 x

0.000224203 x^0.383174

Show[ListPlot@data,
Plot[{f@x, h@x}, {x, 10004, 1001000}, PlotStyle -> {Blue, Red}]]

The power Fit (in Blue) looks better than the Log-Log fit in Red, don't
you think?

Here are the same two functions with the log-log transformation:

Show[ListPlot@Log[10, data],
Plot[{Log[10, f[10^x]], g@x}, {x, Log[10, 10004], Log[10, 1001000]},
PlotStyle -> {Blue, Red}]]

Even on that scale, the blue line looks better.

Perhaps if you used a quadratic fit to the log-log data, you'd be more
satisfied. And maybe not.

Bobby

On Mon, 07 Mar 2011 04:48:40 -0600, Greg Childers <jgchilders at mailaps.org>
wrote:

> Hi,
>
> I'm having a problem with FindFit and a power law problem.  Here's the
> data:
>
> data = {{1004, 0.003977}, {9970, 0.006494}, {100000, 0.012921},
> {1001000, .059795}}
>
> I'm wanting to fit it to a function of the form y = a x^b, and determine
> the best value of b.  When entered into Excel, it returns the exponent b
> = 0.383.  However, Mathematica gives
>
> FindFit[data, a x^b, {a, b}, x]
> {a->0.0000145749, b->0.601807}
>
> A graph of these values overlaid on the original data simply didn't look
> right.  Another way to find the exponent b is to take the log of both
> sides and do a linear fit:
>
> Fit[Log[10, data], {1, x}, x]
> -3.64936 + 0.383174 x
>
> And sure enough the exponent is 0.383 in agreement with Excel.  Why does
> FindFit give a different value?
>
> Greg
>

--
DrMajorBob at yahoo.com

```

• Prev by Date: Re: Mathematica Navigator in Documentation Center - high processor load
• Next by Date: Re: FindFit power law problem
• Previous by thread: Re: FindFit power law problem
• Next by thread: Re: FindFit power law problem