Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python中的渐近回归?_Python_Machine Learning_Statistics_Curve Fitting_Modeling - Fatal编程技术网

Python中的渐近回归?

Python中的渐近回归?,python,machine-learning,statistics,curve-fitting,modeling,Python,Machine Learning,Statistics,Curve Fitting,Modeling,我有一部分数据集,y值最终必须达到一个渐近极限。以下是前300个条目的示意图: 我已经看到了(形式为y=b0+b1*(1-exp(-exp(lrc)*x)),我认为这将是适合此数据的最佳模型。R的库中似乎已经有了,但我在Python中找不到 (1) 是否有以下Cleb回答的渐近回归或相关饱和动力学模型的库函数?如果没有,如何使用scipy.optimize.curve_fit建模 (2) 还有如何预测曲线的最大整数值?例如,如果y=2454.1234是X=10**20和y=2545.5678在

我有一部分数据集,
y
值最终必须达到一个渐近极限。以下是前300个条目的示意图:

我已经看到了(形式为
y=b0+b1*(1-exp(-exp(lrc)*x)
),我认为这将是适合此数据的最佳模型。R的库中似乎已经有了,但我在Python中找不到

(1) 是否有以下Cleb回答的渐近回归或相关饱和动力学模型的库函数?如果没有,如何使用scipy.optimize.curve_fit建模

(2) 还有如何预测曲线的最大整数值?例如,如果
y=2454.1234
X=10**20
y=2545.5678
X=10**50
处的值,对于某个模型,我想得到
2454
。除了线性搜索之外,还有什么一次性的方法吗


谢谢你的帮助。

你可以很容易地使用它。我使用了不同的型号,但你可以很容易地改变它

您得到的输出如下所示:

这是一段非常不言自明的代码:

import numpy as np
from scipy.optimize import curve_fit
import matplotlib.pyplot as plt
import pandas as pd


def f(x, a, b, n):
    return a * x ** n  / (x ** n + b)


data = pd.read_csv('data.txt.txt', sep='\t')

y = data['y'].astype(float)
x = data['X'].astype(float)

popt, pcov = curve_fit(f, x, y, p0=[1800., 20., 1.])

plt.scatter(x, y)
plt.plot(x, f(x, *popt), 'r-')

plt.show()

您使用的模型是什么?@Ain:只有一个模型可以用来描述饱和动力学。您可以用所需的模型替换它,但初始条件(
p0
)将很重要;您可能必须拟合模型的对数。如何进行拟合?您可以添加如何在答案中选择p0值吗?这将是一个很大的帮助。@Ain:现在时间不多,以后可能可以这样做。通常我会绘制一些参数值的数据和函数输出,以至少获得形状ect;其余的
曲线拟合就可以了:)。当然,@Cleb我很期待。谢谢