Analicemos cómo convertir un entero a fecha y hora en él. Ahora, para convertir enteros a fecha y hora en Pandas DataFrame, podemos usar la siguiente sintaxis:
df[‘Columna del marco de datos’] = pd.to_datetime(df[‘Columna del marco de datos’], format=especifique su formato)
Nota: Los datos enteros deben coincidir con el formato especificado.
Ejemplo 1:
Python
# importing pandas package import pandas as pd # creating a dataframe values = {'Dates': [20190902, 20190913, 20190921], 'Attendance': ['Attended', 'Not Attended', 'Attended'] } df = pd.DataFrame(values, columns=['Dates', 'Attendance']) # display print(df) print(df.dtypes)
Producción:
Como podemos ver, el tipo de datos para la columna ‘Fechas’ es Entero. Ahora, para convertirlo en Datetime, usamos la sintaxis mencionada anteriormente. Dado que en este ejemplo el formato de fecha es aaaammdd , el formato de fecha se puede representar de la siguiente manera:
format= '%Y%m%d'
Para nuestro ejemplo, el código completo para convertir los enteros a DateTime sería:
Python
# importing pandas package import pandas as pd # creating the dataframe values = {'Dates': [20190902, 20190913, 20190921], 'Attendance': ['Attended', 'Not Attended', 'Attended'] } df = pd.DataFrame(values, columns=['Dates', 'Attendance']) # converting the integers to datetime format df['Dates'] = pd.to_datetime(df['Dates'], format='%Y%m%d') # display print(df) print(df.dtypes)
Salida :
Ejemplo #2: Ahora, supongamos que el marco de datos tiene una fecha en formato aammdd . En este caso, el formato de fecha ahora contendría ‘y’ en minúsculas:
format='%y%m%d'
Entonces, el código completo de Python se vería de la siguiente manera:
Python
# importing pandas package import pandas as pd # creating dataframe values = {'Dates': [190902, 190913, 190921], 'Attendance': ['Attended', 'Not Attended', 'Attended'] } df = pd.DataFrame(values, columns=['Dates', 'Attendance']) # changing the integer dates to datetime format df['Dates'] = pd.to_datetime(df['Dates'], format='%y%m%d') # display print(df) print(df.dtypes)
Producción:
Ejemplo #3: Ahora, supongamos que sus números enteros contienen fecha y hora. En ese caso, el formato que debes especificar es:
format='%Y%m%d%H%M%S'
Así que el código completo de Python sería:
Python
# importing pandas package import pandas as pd # creating dataframe values = {'Dates': [20190902093000, 20190913093000, 20190921200000], 'Attendance': ['Attended', 'Not Attended', 'Attended'] } df = pd.DataFrame(values, columns=['Dates', 'Attendance']) # changing integer values to datetime format df['Dates'] = pd.to_datetime(df['Dates'], format='%Y%m%d%H%M%S') # display print(df) print(df.dtypes)
Producción:
Ejemplo #4: Considere este DataFrame con microsegundos en nuestros valores DateTime. En este caso, el formato debe especificarse como:
format='%Y%m%d%H%M%S%F'
Así que el código completo de Python será:
Python
# importing pandas package import pandas as pd # creating dataframe values = {'Dates': [20190902093000912, 20190913093000444, 20190921200000009], 'Attendance': ['Attended', 'Not Attended', 'Attended'] } df = pd.DataFrame(values, columns=['Dates', 'Attendance']) # changing the integer dates to datetime format df['Dates'] = pd.to_datetime(df['Dates'], format='%Y%m%d%H%M%S%F') # display print(df) print(df.dtypes)
Producción:
Publicación traducida automáticamente
Artículo escrito por annie_saxena y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA