Séries temporais no Pandas
DatetimeIndex, resample(), rolling(), shift(), geração de intervalos de datas e reamostragem.
Séries temporais no Pandas é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.
Tempo no pandas
pandas oferece suporte completo a datas e horas. Converter textos em marcas de tempo e indexar por tempo permite usar reamostragem, janelas móveis e características de defasagem.
Analisando com to_datetime
pd.to_datetime converte textos ou números em objetos apropriados de marca de tempo, identificando automaticamente a maioria dos formatos comuns.
import pandas as pd
d = pd.to_datetime(["2026-01-01", "2026-01-05", "2026-02-10"])
print(d)
print(d.dtype) # datetime64[ns]Gerando datas com date_range
pd.date_range cria uma sequência igualmente espaçada de marcas de tempo. O código freq controla o intervalo: D para dias, H para horas, M para o fim do mês e assim por diante.
rng = pd.date_range("2026-01-01", periods=5, freq="D")
print(rng)
# 2026-01-01 ... 2026-01-05Criando um DatetimeIndex
Definir uma coluna de data e hora como índice cria um DatetimeIndex, que permite o fatiamento sensível ao tempo e habilita as ferramentas resample/rolling.
ts = pd.Series([10, 12, 9, 15, 11],
index=pd.date_range("2026-01-01", periods=5, freq="D"))
print(ts)Fatiamento por data parcial
Com um DatetimeIndex, você pode fazer o fatiamento usando datas parciais: uma cadeia de texto com um ano ou mês seleciona todas as linhas correspondentes.
monthly = pd.Series(range(60),
index=pd.date_range("2026-01-01", periods=60, freq="D"))
print(monthly["2026-02"].head()) # all of FebruaryReduzindo a frequência com resample
resample funciona como groupby para o tempo. Reduza a frequência para uma mais ampla e depois agregue; por exemplo, transforme dados diários em somas semanais.
weekly = monthly.resample("W").sum()
print(weekly.head())Aumentando a frequência e preenchendo
Reamostrar para uma frequência FINER cria lacunas. Combine isso com .ffill() para propagar o último valor para frente.
hourly = ts.resample("12H").ffill()
print(hourly.head())Janelas móveis
rolling(window) calcula uma estatística sobre uma janela deslizante, a base das médias móveis que suavizam séries ruidosas.
roll = monthly.rolling(window=7).mean()
print(roll.head(10)) # first 6 are NaN (not enough history)Variações de janelas móveis
Qualquer redução funciona em uma janela móvel: mean, sum, std, min e max. Um std móvel de 7 dias mede a volatilidade recente.
vol = monthly.rolling(7).std()
print(vol.tail())Criando defasagens com shift
shift(n) desloca os valores para frente em n períodos, criando características de defasagem e permitindo calcular a mudança entre períodos.
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)Extraindo componentes da data
O acessador .dt expõe componentes como ano, mês e dia da semana, úteis 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)Verificação rápida
Teste seus conhecimentos sobre séries temporais.
Recapitulação
Kit de ferramentas para séries temporais:
pd.to_datetimepara analisar epd.date_rangepara gerar- Um
DatetimeIndexpermite o fatiamento por texto de data parcial resample(freq).agg()para aumentar ou reduzir a frequênciarolling(window)para estatísticas móveisshift(n)para defasagens;.dtpara componentes da data
Perguntas Frequentes
A aula “Séries temporais no Pandas” é grátis?
Sim — o texto completo de “Séries temporais no Pandas” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.
O que vou aprender em “Séries temporais no Pandas”?
DatetimeIndex, resample(), rolling(), shift(), geração de intervalos de datas e reamostragem. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Learn AI with Python?
Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Séries temporais no Pandas”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Learn AI with Python?
Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- GroupBy e agregação
- Tabelas dinâmicas e tabulação cruzada
- Mesclagem e junção avançadas
- Séries temporais no Pandas