Интерполяция (scipy.interpolate)#

В SciPy доступно несколько общих инструментов для интерполяции и сглаживания данных в 1, 2 и более измерениях. Выбор конкретной процедуры интерполяции зависит от данных: являются ли они одномерными, заданы на структурированной сетке или неструктурированы. Другим фактором является желаемая гладкость интерполятора. Вкратце, рекомендуемые процедуры для интерполяции можно резюмировать следующим образом:

kind

рутина

непрерывность

комментарий

1D

линейный

numpy.interp

кусочно-непрерывный

Альтернативно, make_interp_spline(..., k=1)

кубический сплайн

CubicSpline

2-я производная

монотонный кубический сплайн

PchipInterpolator

1-я производная

без перерегулирования

некубический сплайн

make_interp_spline

(k-1)-я производная

k=3 эквивалентно CubicSpline

ближайший

interp1d

kind='nearest', 'previous', 'next'

N-мерная кривая

ближайший, линейный, сплайн

make_interp_spline

(k-1)-я производная

использовать N-мерный y массив

N-мерный регулярный (прямолинейный) сетка

ближайший

RegularGridInterpolator

method='nearest'

линейный

method='linear'

сплайны

Вторые производные

method='cubic', 'quintic'

монотонные сплайны

1-е производные

method='pchip'

N-мерные рассеянные

ближайший

NearestNDInterpolator

псевдоним: griddata

линейный

LinearNDInterpolator

cubic (только 2D)

CloughTocher2DInterpolator

1-е производные

радиальная базисная функция

RBFInterpolator

Сглаживание и аппроксимация данных#

Одномерные сплайн-функции

make_smoothing_spline

классические сглаживающие сплайны, GCV штраф

make_splrep

автоматический/полуавтоматический выбор узлов

сплайновые кривые в N-D

make_splprep

неограниченная сплайн-аппроксимация методом наименьших квадратов

make_lsq_spline

2D сглаживающие поверхности

bisplrep

разбросанные данные

RectBivariateSpline

данные на сетке

Радиальные базисные функции в N-мерном пространстве

RBFInterpolator

Дополнительные детали приведены в ссылках ниже