scipy.odr.polynomial

scipy.odr.polynomial(order)[源代码]

一般多项式模型的工厂函数。

参数
order整型或序列型

如果是整数,它将成为要拟合的多项式的阶数。如果是一个数字序列,那么这些就是多项式的显式幂。始终包含一个常量项(幂为0),因此不要包含0。因此,多项式(N)等价于多项式(值域(1,n+1))。

退货
polynomial模型实例

模型实例。

示例

我们可以使用正交距离回归(ODR)将输入数据与多项式模型拟合:

>>> import matplotlib.pyplot as plt
>>> from scipy import odr
>>> x = np.linspace(0.0, 5.0)
>>> y = np.sin(x)
>>> poly_model = odr.polynomial(3)  # using third order polynomial model
>>> data = odr.Data(x, y)
>>> odr_obj = odr.ODR(data, poly_model)
>>> output = odr_obj.run()  # running ODR fitting
>>> poly = np.poly1d(output.beta[::-1])
>>> poly_y = poly(x)
>>> plt.plot(x, y, label="input data")
>>> plt.plot(x, poly_y, label="polynomial ODR")
>>> plt.legend()
>>> plt.show()
../../_images/scipy-odr-polynomial-1.png