Noções básicas (úteis) de Séries Temporais com Python

Funções de trabalho e fundamentos da série temporal com pandas. Aplicar Índices de data e hora ajuda nas análises.n

A análise de séries temporais faz parte de atividades diárias que acontecem ao nosso redor ao longo do tempo. Conforme dias, meses e anos passam, podemos extrair algumas informações das ocorrências ao longo do tempo.

Para obter essas informações, tivemos ajuda da análise estatística para fazer os dados/informações em alguns formatos e fazer análises. Agora, com mais e mais dados são gerados em todos os lugares é difícil usar ferramentas simples de baixo nível para análise. Assim, as novas ferramentas e algoritmos são desenvolvidos para transformar esses dados em um formato adequado para análises.

Os dados da série temporal são coletados e armazenados de tal forma que fazemos previsões futuras e estabilizamos o crescimento do negócio com o aumento da receita a cada ano, por exemplo.

As aplicações de séries temporais estão em inúmeros campos como:

  • previsão do tempo,
  • mercado de ações,
  • sistemas de sinais,
  • gerenciamento de transferência de dados…

Vamos analisar as séries temporais com python . A funcionalidade básica para lidar com dados e tempo está na biblioteca datetime python.datetime

datetime(year=2020, month=12, day=30)#Output: 
datetime.datetime(2020, 12, 30, 0, 0)

Podemos notar na saída da chamada ao datetime, os “dois zeros”, esses zeros referem-se a horas e minutos após a sequência deano, mês e dia, que são obrigatórios. Vamos tentar outros argumentos:

#output:datetime.datetime(2020, 12, 30, 2, 3, 15, 45)

Antes de mergulharmos fundo vamos obter algumas definições usadas em python para séries temporais.

  1. Datetime: É usado para funcionalidades básicas para tempo e série em python.

2. Dateutils: É também um objeto de função básica, mas como um módulo de terceiros. Você pode instalá-lo caso não esteja instalado em seu ambiente python por comando pip.

3. Time stamps: É usado para saber a referência exata do objeto em um determinado momento.

4. Time delta: É a duração do período em termos de dias, horas, minutos ou segundos entre dois marcadores de tempo em uma classe.

5. Calendar: O objeto do calendário de classe contém muitas funcionalidades relacionadas ao calendário. Usando a aula de calendário, podemos acessar muitos métodos como calendário, dia fraco, intervalo de mês, mês, calendário HTMLe muito mais.

6. Time intervals: É um ponto de tempo de intervalo, ou seja, inicia ponto e ponto final.

7. Time: É um método em uma classe em que podemos acessar e usar muitas funcionalidades de tempo.

Funcionalidades em NumPy

Funcionalidades de data e hora também estão presentes na biblioteca NumPy. Eles estão com os nomes d:d datetime64 timedelta64

Funcionalidades em Pandas

Também podemos ver o método de criação primária de dados e tempo na biblioteca Pandas. Eles são mostrados abaixo:

Na data→, to_datetime to_range

No tempo deltas→, to_timedelta timedelta_range

Em tempo→, period period_range

O bom uso da data e hora na análise de séries temporâneais é quando usamos o componente data ou hora como um índice em uma série ou quadro de dados.

O uso de parsing que lida com strings. O exemplo abaixo mostra como obter um formato de datetime a partir da sequência em formato de data e hora.dateutils

date = parser.parse("31th of January, 1992")
date
#output:
datetime.datetime(1992, 1, 31, 0, 0)
parse("Yesterday was January 4, 2021", fuzzy_with_tokens=True)#output:
(datetime.datetime(2021, 1, 4, 0, 0), ('Yesterday was ', ' ', ' '))
from dateutil.parser import parse

Agora vamos abordar a data e a hora com Pandas. Com pandas podemos trabalhar em série ou DataFrame dados grandes e uma data/hora como um índice é uma facilidade com python.

Exemplo de série temporal com Pandas:

pd.Timedelta("2 days")
#output: Timedelta('2 days 00:00:00')
pd.Timedelta()

DatetimeIndex

Para fazer uma série de datas em pandas e usá-lacomo um índice:DatetimeIndex

DatetimeIndex()

Suponha que queremos fazer outra série e manter a série de índices como um índice para outra série. Assim, duas colunas serão formadas e podemos chamá-lo de quadro de dados também. Para fazer uma série com uma coluna usamos .pd.series

Para fazer um DataFrame de datas, podemos fazê-lo com um dicionário em Pandas:

print(df)
pd.DataFrame ( { } )

Podemos converter este DataFrame usando to_datetime:

pd.to_datetime()

Podemos criar uma coluna Series usando a coluna de data:

Timedelta Pandas

Timedeltas são diferenças de tempos, expressas em unidades de diferença, por exemplo, dias, horas, minutos, segundos. Podem ser positivos e negativos.

Timedelta é uma subclasse de datetime, e se comporta de forma semelhante, mas permite compatibilidade com tipos, bem como uma série de representações personalizadas, análise e atributos.
datetime.timedeltanp.timedelta64

pd.Timedelta()

Série temporal com pandas:

# Alterar período para mês
s_month = pd.Series(pd.date_range("2020-1-1", periods=5, freq="M"))
s_month
# Alterar período para dia
s_day = pd.Series(pd.date_range("2020-1-1", periods=5, freq="D"))
s_day

O período sobre a data inicial muda de acordo com a frequência estabelecida em periods.

Obrigado.

Composing a repository of books (i bought), authors (i follow) & blogs (direct ones) for my own understanding.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store