seabeck.pages.dev

Como converter data de Excel (número serial) para string em Python?

Transformar datas do formato serial do Excel em strings legíveis em Python pode parecer complicado, mas com a abordagem correta, você consegue fazer isso de forma rápida e precisa. Este método utiliza a biblioteca pandas, que é a ferramenta mais confiável para processamento de dados no ecossistema Python.

Pré-requisitos

Passo 1: Importar as bibliotecas necessárias

Para começar, precisamos importar a biblioteca pandas, que oferece funções específicas para lidar com datas no formato Excel.

import pandas as pd

Passo 2: Definir a função de conversão

Agora, criamos uma função que recebe o número serial do Excel e retorna a data formatada como string. O pandas já possui a função to_datetime que entende o formato serial do Excel quando especificamos o argumento unit='D' e origin='1899-12-30'.

def excel_serial_to_string(serial):
    date = pd.to_datetime(serial, unit='D', origin='1899-12-30')
    return date.strftime('%d/%m/%Y')

Passo 3: Testar a função com um exemplo

Vamos testar nossa função com um número serial conhecido. Por exemplo, o número 44197 corresponde a 01/01/2021 no formato Excel.

serial_number = 44197
result = excel_serial_to_string(serial_number)
print(result)  # Saída: 01/01/2021

Exemplo Prático

Veja abaixo uma tabela comparativa mostrando números seriais do Excel e suas respectivas conversões para strings:

Número Serial Excel Data em String (dd/mm/aaaa)
44197 01/01/2021
43831 01/01/2020
36526 01/01/2000
1 01/01/1900

Conclusão

Com este método, você converte datas do formato serial do Excel para strings em Python de forma automática e sem erros manuais. A função criada é flexível e pode ser facilmente integrada em scripts maiores de processamento de dados, garantindo precisão e eficiência no seu trabalho diário.