Pandas Time Series Resampling and Interpolation

From NovaOrdis Knowledge Base
Revision as of 02:43, 21 October 2023 by Ovidiu (talk | contribs) (→‎Overview)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Internal

Overview

This applies to time series.

To interpolate, resample at the desired frequency with resample(), and then call interpolate(). Instead of interpolation, the new elements can be forward filled with pad() or back filled with bfill(), or filled with mean() values, but in that case we get NaNs.

The object must have a datetime-like index (DatetimeIndex, PeriodIndex, TimedeltaIndex) or the caller must pass the label of a date time-like series/index.

s2 = s.resample("1D").interpolate()
s2 = s.resample("2H").interpolate()

To start resampling at a timestamp in the past:

s2 = s.resample("D", origin="2023-10-01").interpolate()