Полиномиальное аппроксимирование кривыми
[
также возвращает p
,S
,mu
]
= polyfit(x
,y
,n
)mu
, который является двухэлементным вектором с центрированием и масштабированием значений. mu(1)
mean(x)
, и mu(2)
std(x)
. Используя эти значения, polyfit
центры x
в нуле и шкалах это, чтобы иметь модульное стандартное отклонение,
Это центрирование и преобразование масштабирования улучшают числовые свойства и полинома и алгоритма подбора.
В проблемах со многими точками, увеличивая степень аппроксимации полиномом с помощью polyfit
не всегда приводит к лучшей подгонке. Старшие полиномы могут быть колебательными между точками данных, ведя к более плохой подгонке к данным. В тех случаях вы можете использовать аппроксимацию полиномом младшего разряда (который имеет тенденцию быть более сглаженным между точками), или различный метод, в зависимости от проблемы.
Полиномы являются неограниченными, колебательными функциями по своей природе. Поэтому они не являются подходящими к экстраполированию ограниченных данных или монотонными (увеличение или уменьшение) данные.
polyfit
использование x
сформировать матричный V
Вандермонда с
n+1
столбцы и m = length(x)
строки, приводящие к линейной системе
который polyfit
решает с p = V\y
. Поскольку столбцы в матрице Вандермонда являются степенями векторного x
, число обусловленности V
является часто большим для старших подгонок, приводящих к сингулярной матрице коэффициентов. В тех случаях центрирование и масштабирование могут улучшить числовые свойства системы произвести более надежную подгонку.