2017-12-23 9 views
0

Ich versuche, ein Pandas to_datetime Objekt mit einem anderen to_datetime Objekt zu vergleichen. An beiden Orten gebe ich das Datum als date = pd.to_datetime('2017-01-03') ein, aber wenn ich eine Druckanweisung für jedes ausführe, bekomme ich in einem Fall 2017-01-03, aber in einem anderen bekomme ich 2017-01-03 00:00:00. Dies verursacht ein Problem, denn wenn ich eine if-Anweisung verwende, die sie vergleicht, wie if date1 == date2:, werden sie nicht als gleichwertig verglichen, wenn sie in Wirklichkeit sind. Gibt es eine Formatanweisung, die ich verwenden kann, um den to_datetime() Befehl zu erzwingen, das 2017-01-03 Format zu geben?pandas to_datetime Formatierung

+1

Ich bin gespannt, wie Sie mit zwei verschiedenen Fällen enden. –

Antwort

1

Sie date() Methode können von Pandas Zeitstempel wählen Sie einfach Datum und auch Verwenden Sie strftimeme(format) Methode, um es in eine Zeichenfolge mit unterschiedlichen Formaten zu konvertieren.

date = pd.to_datetime('2017-01-03').date() 
print(date) 
>datetime.date(2017, 1, 3) 

oder

date = pd.to_datetime('2017-01-03').strftime("%Y-%m-%d") 
print(date) 
>'2017-01-03' 
1

try .date()

pd.to_datetime('2017-01-03').date() 
0

Sie

pd.to_datetime().date() 

Zum Beispiel verwenden können:

a='2017-12-24 22:44:09' 
b='2017-12-24' 
if pd.to_datetime(a).date() == pd.to_datetime(b).date(): 
    print('perfect') 
Verwandte Themen