Rui*_*ips 2 python numpy polynomial-math python-2.7 polynomials
我正在使用该类numpy.polynomial.polynomial.Polynomial(Numpy 库),以便将fit()某些数据与多项式函数相匹配。获得的多项式是正确的,我可以绘制它并替换点以获得 \xe2\x80\x98y\xe2\x80\x99 值,并且我得到正确的响应。问题是该类.coef的属性Polynomial返回一组系数,这些系数以某种方式标准化或更改,但我不知道如何进行标准化或更改。我是什么意思?代码如下:
x_vid = array([0.0, 50.0, 75.0, 100.0])\ny_vid = array([0.0, 30.0, 55.0, 100.0])\npol = Polynomial.fit(x_vid, y_vid, 5) # The polynomial is OK!!\nprint pol.coef\nRun Code Online (Sandbox Code Playgroud)\n\n该.coef属性返回下一个数组:
30 38.16 17.93 9.98 2.06 1.85\nRun Code Online (Sandbox Code Playgroud)\n\n这些系数按递增顺序排列,因此这些系数表示以下多项式函数:
\n\n\n\n\n30 + 38.16x + 17.93x^2 + 9.98x^3 + 2.06x^4 + 1.85x^5
\n
然而,问题来了,如果我替换我的值范围 [0-100] 中的任何值,它将不会返回正确的值,尽管如果我这样做,例如:
\n\npol(0)\xe2\x86\x92 我会得到一个 0,这是可以的,但立即发现在我编写的多项式中,它不会在 x=0 时返回 0。
我认为多项式函数可能会被标准化或移位。我可能在这里面临一个数学问题,而不是编程问题,但任何帮助都非常受欢迎,因为我需要写下多项式,但我不确定它的正确形式。谢谢。
\n\n\n多项式系数用于缩放和偏移多项式,以提高数值稳定性。您可以转换为“正常”多项式,也可以直接使用级数(如果您替换 )off + scl*x,x其中off和scl由 所返回pol.mapparms。要转换为标准形式(不推荐),请执行pol.convert(domain=[-1, 1]).
| 归档时间: |
|
| 查看次数: |
3290 次 |
| 最近记录: |