Entfernung Zeit Datum&Zeit-variable in pandas?
ich habe eine variable, bestehend aus 300k Datensätze mit Datum und das Datum Aussehen
2015-02-21 12:08:51
von diesem Datum möchte ich entfernen
Art von date-variable ist pandas.core.Serie.Serie
Dies ist die Art, wie ich versuchte
from datetime import datetime,date
date_str = textdata['vfreceiveddate']
format_string = "%Y-%m-%d"
then = datetime.strftime(date_str,format_string)
einige Zufällige FEHLER
Im obigen code textdata ist mein datasetname und vfreceived Datum ist eine variable, bestehend aus Termine
Wie kann ich schreiben Sie den code zum entfernen der Zeit aus dem datetime.
- Dein Fehler ist wahrscheinlich, weil Ihr format-Zeichenfolge und die Zeichenfolge selbst nicht übereinstimmen, bitte post-Daten. Was Sie tun können, ist
then = pd.to_datetime(textdata['vfreceiveddate']).dt.date
ich denke, dass sollte funktionieren, aber Sie brauchen, um post-raw-input-Daten, und es ist unwahrscheinlich, dass der Fehler zufällig sein wird
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vorausgesetzt, alle deine datetime strings werden in einem ähnlichen format dann einfach konvertieren Sie Sie in datetime mit
to_datetime
und rufen Sie dann diedt.date
Attribut zu bekommen, nur das Datum Teil:BEARBEITEN
Wenn Sie nur wollen, um die Anzeige zu ändern und nicht die dtype dann können Sie anrufen
dt.normalize
:Können Sie sehen, dass die "dtype" bleibt als
datetime
:date
Objekt, also die "dtype" ändert, dies ist das erwartete Verhaltendt.normalize()
dies die Zeit, um00:00
und nicht die Zeit, sondern die Erhaltung der dtype alsdatetime
Die Sie aufrufen
datetime.datetime.strftime
, das erfordert als erstes argument einedatetime.datetime
Instanz, weil es ein ungebundene Methode; aber du bist übergibt eine Zeichenfolge statt einer datetime-Instanz, Woher die offensichtlichen Fehler.Können Sie arbeiten rein auf string-Ebene, wenn das Ergebnis, das Sie wollen, mit der die Daten, die Sie als Beispiel
date_str.split()[0]
zum Beispiel wäre genau das2015-02-21
Zeichenfolge, die Sie erscheinen zu verlangen.Oder Sie kann verwenden
datetime
, aber dann müssen Sie analysieren die Zeichenfolge zunächst nicht format es-daher, strpZeit nicht strfZeit:wenn es ein
datetime.date
Objekt, das Sie möchten (aber wenn alles, was Sie wollen, ist die string-form das Datum ein solcher Ansatz sein könnten "übertrieben":-).