0

我想将幂函数拟合到数据集。我正在使用这种方法:http

://mathworld.wolfram.com/LeastSquaresFittingPowerLaw.html 但结果不可接受:b = -0,001901, a = 7,26



我的数据集:

8553600  458.2
17193600    373.6
25833600    694.16
34646400    738.33
44064000    817.89
54259200    1040.67
67910400    1032.69
76291200    1222.1
84844800    1245.65
94089600    1217.44
102211200   1579.38
110592000   1859.24
118886400   1711.67
127612800   2303.62
136684800   2658.26
219196800   3669.23
225676800   3525.02
225763200   3749.27

这种方法是不够的,还是我犯了一个错误?有没有更好的解决方案来做到这一点?

4

3 回答 3

2

拟合方法是“垃圾进,垃圾出”的方法:您应该首先说服自己存在您要拟合的关系类似的关系。在你的情况下,制作一个散点图,看看它是否看起来像一个幂函数。可能是您必须添加一个常数,或者选择了错误的指数。一般来说,没有办法轻松估计关系。最好的开始方法是找到为什么某种关系应该成立的理论论据,并尝试估计该关系的参数。

于 2010-08-30T09:14:57.023 回答
1

您的数据看起来更像是一个线性函数,而不是幂律。通过将其与 拟合,您将获得更好的拟合f(x) = a*x+b

于 2010-08-30T10:03:47.697 回答
0

我认为您只是错误地实施了它。

B 的分母是

n*sum( x_i ^2 ) - (sum( x_i ))^2

而看起来你做了

n*sum( x_i )^2 - (sum( x_i))^2
于 2010-08-30T17:00:44.127 回答