Conversão de texto para data no Python

Como sempre digo, lidar com data é uma dor de cabeça em qualquer linguagem. Com o tempo a gente se acostuma, mas no começo é bem chato e trabalhoso lembrar de todas as formas de converter. Sempre tem aquele rolo da data vir com hora, ou com mês abreviado, ou com mês completo. Pensando nisso, este post vai mostrar como converter alguns formatos de data que chegam em texto no seu dataframe.

Primeiro, é importante conhecer a função que faz a conversão: a to_datetime(). Essa função pertence ao Pandas. Como a gente sempre carrega essa biblioteca quando lidamos com dados no Python, fica difícil para você esquecer.

A lógica é bem simples, insira o campo que deve ser convertido e o formato em que ele está. Claro, a pegadinha está no formato. Será que é só colocar “dmy” ou seria “ddmmyyyy”?

Primeiro, importe a biblioteca pandas:

import pandas as pd

Veja então como converter diferentes formatos:

# Dia da semana + mes + dia + ano separados por espaço 

exemplo1 = pd.to_datetime("Monday June 08, 2020", format="%A %B %d, %Y")
print(exemplo1)

# ano + mes + dia + hora separados por espaço 
exemplo_2 = pd.to_datetime("2020 June 08 01:56", format="%Y %B %d %H:%M")
print(exemplo_2)

# ano+mes+dia separados por hífen

exemplo_3 = pd.to_datetime("2020-06-08", format="%Y-%m-%d")
print(exemplo_3)

# mes + dia + ano separados por barra
exemplo_4 = pd.to_datetime("06/08/2020", format="%m/%d/%Y")
print(exemplo_4)

 

Com uma sintaxe parecida, você pode fazer conversões com o datetime:

from datetime import datetime
exemplo_5 = datetime.strptime('01-08-2020', '%d-%m-%Y')
print(exemplo_5)

exemplo_6 = datetime.strptime('01-08-2020, 00:00:00', '%d-%m-%Y, %H:%M:%S')
print(exemplo_6)

Viu como vai ficando mais fácil?

Agora está mais tranquilo lidar com datas.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *