2013-08-26 23 views
0

如何将我的数据拟合为R或Python中的渐近幂律曲线或指数方法曲线?在R/Python中拟合指数方法/渐近幂规律

我的数据基本上表明,y轴连续增加,但增量(增加)随着x的增加而减小。

任何帮助将不胜感激。

+0

在尝试拟合任何曲线之前,标准(老式)方法是将数据简单地绘制在日志(或半对数)轴上。如果数据大致是线性的,那么你可能有一个指数曲线。 – Hooked

回答

2

使用Python,如果您安装了numpy和scipy,则可以使用scipy包的curve_fit。它采用用户定义的函数和x-以及y-值(代码中的x_values和y_values),并返回优化的参数和参数的协方差。

import numpy 
import scipy 

def exponential(x,a,b): 
    return a*numpy.exp(b*x) 

fit_data, covariance = scipy.optimize.curve_fit(exponential, x_values, y_values, (1.,1.)) 

这个答案假定你有你的数据作为一维numpy阵列。不过,您可以轻松地将数据转换为其中的一种。

最后一个参数包含您的优化的起始值。如果您不提供它们,那么在确定参数数量时可能会出现问题。

+0

其实,你不需要导入数学,我以这种方式纠正了我的答案。 – Dux