Contenido de este artículo
- 0
- 0
- 0
- 0
A menudo, puede estar interesado en convertir una o más columnas en un DataFrame de pandas a un formato DateTime. Afortunadamente, esto es fácil de hacer usando la función to_datetime () .
Este tutorial muestra varios ejemplos de cómo utilizar esta función en el siguiente DataFrame:
importar numpy como np importar pandas como pd #create DataFrame df = pd.DataFrame ({'evento': ['A', 'B', 'C'], 'fecha_inicio': ['20150601', '20160201', '20170401'], 'fecha_finalización': ['20150608', '20160209', '20170416']}) #view DataFrame df evento fecha_inicio fecha_final 0 A 20150601 20150608 1 B 20160201 20160209 2 C 20170401 201704161 #ver tipos de datos de columna df. dtipos objeto de evento objeto start_date objeto end_date dtype: objeto
Ejemplo 1: convertir una sola columna en DateTime
El siguiente código muestra cómo convertir la columna «fecha_inicio» de una cadena a un formato de fecha y hora:
#convert start_date al formato DateTime df ['start_date'] = pd. to_datetime (df ['start_date']) #view DataFrame df evento fecha_inicio fecha_final 0 A 2015-06-01 20150608 1 B 2016-02-01 20160209 2 C 2017-04-01 20170416 #ver tipos de fecha de columna df. dtipos objeto de evento start_date datetime64 [ns] objeto end_date dtype: objeto
Tenga en cuenta que la función to_datetime () es inteligente y normalmente puede inferir el formato de fecha correcto para usar, pero también puede especificar el formato para usar con el argumento de formato :
#convert start_date al formato DateTime df ['start_date'] = pd. to_datetime (df ['start_date'], format = ' % Y% m% d ') #view DataFrame df evento fecha_inicio fecha_final 0 A 2015-06-01 20150608 1 B 2016-02-01 20160209 2 C 2017-04-01 20170416 #ver tipos de fecha de columna df. dtipos objeto de evento start_date datetime64 [ns] objeto end_date dtype: objeto
Ejemplo 2: convertir varias columnas en DateTime
El siguiente código muestra cómo convertir las columnas «start_date» y «end_date» de cadenas a formatos de fecha y hora:
#convert start_date y end_date a los formatos DateTime df [['start_date', 'end_date']] = df [['start_date', 'end_date']]. aplicar (pd. to_datetime ) #view DataFrame df evento fecha_inicio fecha_final 0 A 2015-06-01 2015-06-08 1 B 2016-02-01 2016-02-09 2 C 2017-04-01 2017-04-16 #ver tipos de fecha de columna df. dtipos objeto de evento start_date datetime64 [ns] end_date datetime64 [ns] dtype: objeto
Ejemplo 3: convertir columnas a formato de fecha y hora en segundos
En algunos casos, también puede tener columnas que incluyan una fecha junto con las horas, los minutos y los segundos, como el siguiente DataFrame:
#create DataFrame df = pd.DataFrame ({'evento': ['A', 'B', 'C'], 'fecha_inicio': ['20150601043000', '20160201054500', '20170401021215'], 'fecha_finalización': ['20150608', '20160209', '20170416']}) #view DataFrame df evento fecha_inicio fecha_final 0 A 20150601043000 20150608 1 B 20160201054500 20160209 2 C 20170401021215 20170416
Una vez más, la función to_datetime () es inteligente y generalmente puede inferir el formato correcto para usar sin que nosotros lo especifiquemos:
#convert start_date al formato DateTime df ['start_date'] = pd. to_datetime (df ['start_date']) #view DataFrame df evento fecha_inicio fecha_final 0 A 2015-06-01 04:30:00 20150608 1 B 2016-02-01 05:45:00 20160209 2 C 2017-04-01 02:12:15 20170416 #ver tipos de fecha de columna df. dtipos objeto de evento start_date datetime64 [ns] objeto end_date dtype: objeto
Por supuesto, en la naturaleza es probable que se encuentre con una variedad de formatos de fecha y hora extraños, por lo que es posible que tenga que usar el argumento de formato para decirle a Python exactamente qué formato de fecha y hora debe usar.
En esos casos, consulte esta página para obtener una lista completa de los operadores% DateTime que puede utilizar para especificar formatos.
Recursos adicionales
Cómo convertir fecha y hora a fecha en Pandas
Cómo convertir cadenas a flotantes en Pandas
- https://r-project.org
- https://www.python.org/
- https://www.stata.com/
¿Te hemos ayudado?
Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:La ayuda no cuesta nada
Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo: