Come convertire una stringa in datetime in pandas


È possibile utilizzare i seguenti metodi per convertire una colonna stringa nel formato datetime in un DataFrame panda:

Metodo 1: convertire una colonna stringa in Datetime

 df[' col1 '] = pd. to_datetime (df[' col1 '])

Metodo 2: convertire più colonne da String a Datetime

 df[[' col1 ', ' col2 ']] = df[[' col1 ', ' col2 ']]. apply (pd. to_datetime )

I seguenti esempi mostrano come utilizzare ciascuno di questi metodi nella pratica con i seguenti DataFrame panda:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' task ': ['A', 'B', 'C', 'D'],
                   ' due_date ': ['4-15-2022', '5-19-2022', '6-14-2022', '10-24-2022'],
                   ' comp_date ': ['4-14-2022', '5-23-2022', '6-24-2022', '10-7-2022']})

#view DataFrame
print (df)

  task due_date comp_date
0 A 2022-04-15 2022-04-14
1 B 2022-05-19 2022-05-23
2 C 2022-06-14 2022-06-24
3 D 2022-10-24 2022-10-07

#view data type of each column
print ( df.dtypes )

task object
due_date object
comp_date object
dtype:object

Possiamo vedere che ogni colonna nel DataFrame ha attualmente un tipo di dati oggetto , ovvero una stringa.

Esempio 1: convertire una colonna stringa in Datetime

Possiamo usare la seguente sintassi per convertire la colonna due_date da una stringa a datetime:

 #convert due_date column to datetime
df[' due_date '] = pd. to_datetime (df[' due_date '])

#view updated DataFrame
print (df)

  task due_date comp_date
0 A 2022-04-15 4-14-2022
1 B 2022-05-19 5-23-2022
2 C 2022-06-14 6-24-2022
3 D 2022-10-24 10-7-2022

#view data type of each column
print ( df.dtypes )

task object
due_date datetime64[ns]
comp_date object
dtype:object

Possiamo vedere che la colonna due_date è stata convertita in datetime mentre tutte le altre colonne sono rimaste invariate.

Esempio 2: convertire più colonne da String a Datetime

Possiamo utilizzare la seguente sintassi per convertire le colonne due_date e comp_date da una stringa a datetime:

 #convert due_date and comp_date columns to datetime
df[[' due_date ', ' comp_date ']] = df[[' due_date ', ' comp_date ']]. apply (pd. to_datetime )

#view updated DataFrame
print (df)

  task due_date comp_date
0 A 2022-04-15 2022-04-14
1 B 2022-05-19 2022-05-23
2 C 2022-06-14 2022-06-24
3 D 2022-10-24 2022-10-07

#view data type of each column
print ( df.dtypes )

task object
due_date datetime64[ns]
comp_date datetime64[ns]
dtype:object

Possiamo vedere che le colonne due_date e comp_date sono state entrambe convertite da una stringa a datetime.

Nota : puoi trovare la documentazione completa della funzione panda to_datetime() qui .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:

Come creare un intervallo di date in Pandas
Come convertire il timestamp in data/ora in Pandas
Come calcolare la differenza tra due date nei panda

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *