pandas.Series.interpolate
-
Series.interpolate(method='linear', axis=0, limit=None, inplace=False, limit_direction='forward', limit_area=None, downcast=None, **kwargs)[source] -
Интерполяция значений по различным методам.
Обратите внимание, что только
method='linear'поддерживается для DataFrames/Series с MultiIndex.Параметры: method : {‘linear’, ‘time’, ‘index’, ‘values’, ‘nearest’, ‘zero’,
‘slinear’, ‘quadratic’, ‘cubic’, ‘barycentric’, ‘krogh’, ‘polynomial’, ‘spline’, ‘piecewise_polynomial’, ‘from_derivatives’, ‘pchip’, ‘akima’}
- ‘linear’: игнорирует индекс и обрабатывает значения как равноотстоящие. Это единственный метод, поддерживаемый для MultiIndexes. значение по умолчанию
- ‘time’: интерполяция работает с данными с дневной и более высокой разрешающей способностью для интерполяции заданной длины интервала
- ‘index’, ‘values’: использовать фактические числовые значения индекса
- ‘nearest’, ‘zero’, ‘slinear’, ‘quadratic’, ‘cubic’, ‘barycentric’, ‘polynomial’ передаются в
scipy.interpolate.interp1d. Оба ‘polynomial’ и ‘spline’ требуют, чтобы вы также указалиorder(целое число), например df.interpolate(method=’polynomial’, order=4). Они используют фактические числовые значения индекса. - ‘krogh’, ‘piecewise_polynomial’, ‘spline’, ‘pchip’ и ‘akima’ — все являются оболочками над методами интерполяции scipy с аналогичными названиями. Они используют фактические числовые значения индекса. Для получения дополнительной информации об их поведении см. документацию scipy и документацию по руководству
- ‘from_derivatives’ относится к BPoly.from_derivatives, который заменяет метод интерполяции ‘piecewise_polynomial’ в scipy 0.18
В версии 0.18.1: Добавлена поддержка метода ‘akima’ Добавлено метод интерполяции ‘from_derivatives’, который заменяет ‘piecewise_polynomial’ в scipy 0.18; обратная совместимость со scipy < 0.18
axis : {0, 1}, по умолчанию 0
- 0: заполнить столбец за столбцом
- 1: заполнить строку за строкой
limit : int, по умолчанию None.
Максимальное количество последовательных NaN, которые нужно заполнить. Должно быть больше 0.
-
limit_direction : {‘forward’, ‘backward’, ‘both’}, default ‘forward’
limit_area : {‘inside’, ‘outside’}, по умолчанию None
- None: (по умолчанию) без ограничения заполнения
- ‘inside’ Только заполнить NaN, окружённые действительными значениями (интерполяция).
- ‘outside’ Только заполнить NaN вне действительных значений (экстраполяция).
Если limit указан, последовательные NaN будут заполнены в этом направлении.
В версии 0.21.0.
inplace : bool, по умолчанию False
Обновить NDFrame на месте, если это возможно.
downcast : необязательно, ‘infer’ или None, по умолчанию None
Преобразовать типы данных, если это возможно.
-
kwargs : keyword arguments to pass on to the interpolating function.
Возвращает: - Series или DataFrame той же формы, интерполированные в NaN
Примеры
Заполнение NaN
>>> s = pd.Series([0, 1, np.nan, 3]) >>> s.interpolate() 0 0 1 1 2 2 3 3 dtype: float64
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.23.4/generated/pandas.Series.interpolate.html