-1

我有涡轮增压器压力图的实验数据点 (x1, x2, ..., xn), (y1, y2, ..., yn) 并且想要获得趋势线方程。根据我的研究结果,它是这样的:

y = (ax^5 + bx^4 + cx^3 + dx^2 + ex + f)/(x+g)    # my equation

请告诉我,是否有任何现成的功能?我尝试使用 np.polyfit,但它适用于通常的多项式,我必须以这种方式猜测“g”:

# y*(x-g) = ax^5 + bx^4 + cx^3 + dx^2 + ex + f
pc  = np.polyfit(x, y*(x+g), 5)
y = (pc[0]*x**5 + pc[1]*x**4 + pc[2]*x**3 + pc[3]*x**2 + pc[4]*x + pc[5])/(x + g)

如果有人可以帮助获得我的方程式的系数,那就太好了。

4

1 回答 1

0

尽管这会导致最小化略有不同,但您可以将方程线性化为

x y = ax^5 + bx^4 + cx^3 + dx^2 + ex + f - g y

并通过线性最小二乘法求解。

于 2019-10-17T20:23:17.823 回答