Convierte registros que ocurren a horas aleatorias en una tabla continua, rellenando huecos matemáticamente.
Convert records that occur at random times into a continuous table, filling gaps mathematically.
Este ejercicio es solo para aprendizaje y pruebas. No ejecutes scripts contra datos reales, ambientes de producción, APIs externas, portales con login, datos sensibles, sistemas críticos o repositorios empresariales sin autorización, respaldos, pruebas previas, permisos mínimos, control de cambios y cumplimiento de los protocolos de ciberseguridad de tu organización.
This exercise is for learning and testing only. Do not run scripts against real data, production environments, external APIs, login portals, sensitive data, critical systems, or enterprise repositories without authorization, backups, prior testing, least-privilege permissions, change control, and compliance with your organization's cybersecurity protocols.
Agrupar registros por intervalos regulares de tiempo y rellenar valores faltantes mediante interpolación.
Group records into regular time intervals and fill missing values using interpolation.
| timestamp | valor |
|---|---|
| 2026-01-01 08:03 | 10 |
| 2026-01-01 08:22 | 18 |
| 2026-01-01 08:51 | 30 |
import pandas as pd
# Agrupa y rellena / Group and interpolate
df_continuo = df.resample("15T").mean().interpolate()| timestamp | valor_interpolado |
|---|---|
| 08:00 | 10.0 |
| 08:15 | 16.0 |
| 08:30 | 22.0 |
| 08:45 | 28.0 |
# ==========================================================
# Python Advanced Topic 20
# Resampling and Interpolation for Time Series
# ==========================================================
import pandas as pd
df = pd.DataFrame({
"timestamp": [
"2026-01-01 08:03",
"2026-01-01 08:22",
"2026-01-01 08:51",
"2026-01-01 09:10"
],
"valor": [10, 18, 30, 40]
})
df["timestamp"] = pd.to_datetime(df["timestamp"])
df = df.set_index("timestamp").sort_index()
# Convert irregular records into regular 15-minute intervals
df_continuo = df.resample("15min").mean().interpolate()
df_continuo.to_csv("time_series_resampled.csv")
print(df_continuo)valor timestamp 2026-01-01 08:00:00 10.0 2026-01-01 08:15:00 16.0 2026-01-01 08:30:00 22.0 2026-01-01 08:45:00 28.0 2026-01-01 09:00:00 34.0
Resampling e interpolación convierten eventos desordenados en una serie continua, lista para análisis temporal y modelos predictivos.
Resampling and interpolation turn irregular events into a continuous series, ready for temporal analysis and predictive models.