2016-06-28 15 views
15

DOB Spalte Beispielwert im Format ist - 1/1/2016 die Wie das Datetime-Format in Pandas ändern

DOB  object 

Konvertierung in Datumsformat

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

Datum unter

wie gezeigt wird standardmäßig konvertiert Objekt konvertiert in

2016-01-26 

dtype ist

Jetzt möchte ich dieses Datumsformat zu 01/26/2016 oder in anderen allgemeinen Datumsformaten konvertieren. Wie mache ich es?

Unabhängig von der Methode, die ich versuche, zeigt es immer das Datum in 2016-01-26 Format.

Antwort

33

können Sie dt.strftime verwenden, wenn datetime in andere Formate konvertieren müssen, aber dann dtype der Säule ist object (string):

import pandas as pd 

df = pd.DataFrame({'DOB': {0: '26/1/2016 ', 1: '26/1/2016 '}}) 
print (df) 
     DOB 
0 26/1/2016 
1 26/1/2016 

df['DOB'] = pd.to_datetime(df.DOB) 
print (df) 
     DOB 
0 2016-01-26 
1 2016-01-26 

df['DOB1'] = df['DOB'].dt.strftime('%m/%d/%Y') 
print (df) 
     DOB  DOB1 
0 2016-01-26 01/26/2016 
1 2016-01-26 01/26/2016 
+5

‚strftime‘ wandelt die Datetime-Spalte zum Anlegen der Operation auf DOB1 auf Unicode wir muss es wieder in datetime konvertieren. Gibt es keine andere Art zu formatieren ohne den data_type zu verlieren? –