#numpy #polynomials #coefficients
Вопрос:
Я пытаюсь получить коэффициенты a numpy.polynomial.polynomial.Polynomial
, полученные с помощью fit
метода:
import numpy.polynomial as poly
x = [1, 2, 3, 4, 5]
y = [16, 42.25, 81, 132.25, 196]
c = poly.Polynomial.fit(x, y, deg = 2)
print(c(5))
print(c)
Эта небольшая программа печатает
196.00000000000006
poly([81. 90. 25.])
что является правильным значением для c(5)
, но не для полиномиальных коэффициентов, которые являются 2.25
, 7.5
, и 6.25
.
Как мне получить фактические коэффициенты?
Ответ №1:
Согласно документации, .fit()
метод возвращает
Ряд, представляющий наименьшие квадраты, соответствующие данным, и имеющий домен и окно, указанные в вызове. Если коэффициенты для не масштабированных и несмещенных базисных многочленов представляют интерес, выполните new_series.convert().coef.
Работа c.convert().coef
с вашими данными приводит к:
array([2.25, 7.5 , 6.25])