"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo analizar formatos de fecha personalizados en archivos CSV usando Pandas?

¿Cómo analizar formatos de fecha personalizados en archivos CSV usando Pandas?

Publicado el 2024-11-03
Navegar:711

How to Parse Custom Date Formats in CSV Files Using Pandas?

Pandas automatiza el análisis de fechas en archivos CSV

Pandas simplifica la recuperación de datos de archivos CSV con su capacidad de inferir automáticamente tipos de datos, incluidas fechas. Sin embargo, en ocasiones no reconoce formatos de fecha específicos, como los presentados como "2013-6-4".

Solución: especificar el argumento 'parse_dates'

Para superar este desafío, utilice el argumento 'parse_dates'. Por ejemplo, para designar una columna con fechas en el formato "AAAA-MM-DD" como objetos 'fechahora', ejecute lo siguiente:

df = pandas.read_csv('test.dat', parse_dates=['datetime'], delimiter=r"\s ", names=['col1','col2','col3'])

Esto convertirá la columna relevante en objetos 'datetime'.

Personalización avanzada: funciones del analizador de fechas

Para formatos de fecha más complejos, utilice funciones del analizador de fechas. Estos otorgan una mayor flexibilidad a la hora de especificar una lógica de análisis personalizada. Por ejemplo, considere una columna 'fecha y hora' con el formato "AAAA-MM-DD HH:MM:SS":

from datetime import datetime
dateparse = lambda x: datetime.strptime(x, '%Y-%m-%d %H:%M:%S')
df = pd.read_csv(infile, parse_dates=['datetime'], date_parser=dateparse)

Incluso puedes fusionar varias columnas relacionadas con fechas en una sola columna 'datetime':

dateparse = lambda x: datetime.strptime(x, '%Y-%m-%d %H:%M:%S')
df = pd.read_csv(infile, parse_dates={'datetime': ['date', 'time']}, date_parser=dateparse)

Examine la documentación de 'strptime' para obtener directivas que representen varios formatos de fecha y hora.

Declaración de liberación Este artículo se reimprime en: 1729206855 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3