0Pricing
Learn AI with Python · Lección

Series temporales en Pandas

DatetimeIndex, resample(), rolling(), shift(), generación de rangos de fechas y remuestreo.

Series temporales en Pandas es una lección gratuita de Learn AI with Python en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Learn AI with Python, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Learn AI with Python incluye 4 lecciones en total.

El tiempo en pandas

pandas ofrece compatibilidad de primera clase con fechas y horas. Convertir cadenas en marcas de tiempo e indexar por tiempo permite usar remuestreo, ventanas móviles y características de desfase.

Analizar fechas con to_datetime

pd.to_datetime convierte cadenas o números en objetos Timestamp adecuados e infiere automáticamente la mayoría de los formatos habituales.

import pandas as pd
d = pd.to_datetime(["2026-01-01", "2026-01-05", "2026-02-10"])
print(d)
print(d.dtype)   # datetime64[ns]

Generar fechas con date_range

pd.date_range crea una secuencia de marcas de tiempo espaciadas uniformemente. El código freq controla el paso: D para días, H para horas, M para fin de mes, entre otros.

rng = pd.date_range("2026-01-01", periods=5, freq="D")
print(rng)
# 2026-01-01 ... 2026-01-05

Crear un DatetimeIndex

Establecer una columna de fecha y hora como índice crea un DatetimeIndex, que permite realizar selecciones conscientes del tiempo y utilizar las herramientas resample/rolling.

ts = pd.Series([10, 12, 9, 15, 11],
               index=pd.date_range("2026-01-01", periods=5, freq="D"))
print(ts)

Selección mediante cadenas parciales

Con un DatetimeIndex puede seleccionar mediante fechas parciales: una cadena que represente un año o un mes selecciona todas las filas correspondientes.

monthly = pd.Series(range(60),
    index=pd.date_range("2026-01-01", periods=60, freq="D"))
print(monthly["2026-02"].head())   # all of February

Reducir la frecuencia con resample

resample es un groupby para datos temporales. Reduzca la frecuencia a una más gruesa y, después, agregue los datos; por ejemplo, convierta datos diarios en sumas semanales.

weekly = monthly.resample("W").sum()
print(weekly.head())

Aumentar la frecuencia y rellenar

Remuestrear a una frecuencia MÁS FINA crea huecos. Combínelo con .ffill() para propagar hacia delante el último valor.

hourly = ts.resample("12H").ffill()
print(hourly.head())

Ventanas móviles

rolling(window) calcula un estadístico sobre una ventana deslizante y constituye la base de las medias móviles que suavizan las series ruidosas.

roll = monthly.rolling(window=7).mean()
print(roll.head(10))   # first 6 are NaN (not enough history)

Variantes de ventanas móviles

Cualquier reducción funciona sobre una ventana móvil: mean, sum, std, min y max. Una std móvil de 7 días mide la volatilidad reciente.

vol = monthly.rolling(7).std()
print(vol.tail())

Crear desfases con shift

shift(n) desplaza los valores n periodos hacia delante, lo que crea características de desfase y permite calcular cambios entre periodos.

df = pd.DataFrame({"sales": [100, 110, 105, 130]})
df["prev"] = df["sales"].shift(1)
df["pct_change"] = (df["sales"] - df["prev"]) / df["prev"]
print(df)

Extraer componentes de fecha

El accesor .dt expone componentes como year, month y dayofweek, que resultan útiles como características para modelos.

s = pd.Series(pd.date_range("2026-01-01", periods=3, freq="D"))
print(s.dt.dayofweek)   # 0=Monday
print(s.dt.month)

Comprobación rápida

Ponga a prueba sus conocimientos sobre series temporales.

Resumen

Herramientas para series temporales:

  • pd.to_datetime para analizar fechas y pd.date_range para generarlas
  • Un DatetimeIndex permite seleccionar mediante cadenas parciales
  • resample(freq).agg() para aumentar o reducir la frecuencia
  • rolling(window) para calcular estadísticos móviles
  • shift(n) para desfases; .dt para componentes de fecha

Preguntas frecuentes

¿La lección «Series temporales en Pandas» es gratis?

Sí — el texto completo de «Series temporales en Pandas» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Learn AI with Python, actualiza a CoddyKit PRO. El curso de Learn AI with Python incluye 4 lecciones en total.

¿Qué aprenderé en «Series temporales en Pandas»?

DatetimeIndex, resample(), rolling(), shift(), generación de rangos de fechas y remuestreo. Practicas Learn AI with Python con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Learn AI with Python?

No se requiere experiencia previa. Learn AI with Python en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Series temporales en Pandas»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Learn AI with Python?

Sí. Cada lección de Learn AI with Python incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. GroupBy y agregación
  2. Tablas dinámicas y tabulación cruzada
  3. Fusión y combinación avanzadas
  4. Series temporales en Pandas
← Volver a Learn AI with Python