Pandas Dataframe-Spalte von object zu datetime konvertieren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Stephan12
User
Beiträge: 20
Registriert: Mittwoch 29. Januar 2014, 14:52

Hallo,
ich benutze Python 2.7 mit Pandas.
ich habe einen dataframe aus einem csv-File eingelsen, in dessen Spalte "expiration"
sich Datumsangaben der Form yy/tt/mm befinden.
diese sind als object formatiert und ich brauche sie als Datumsangabe, also datetime.
Meine Versuche mittels pandas.to_datetime(dataframe.expiration)
und dataframe.expiration.astype(datetime64) sind bisher fehlgeschlagen,
mit der Fehlermeldung "Cannot create a NumPy datetime other than NaT with generic units".
Wie macht man es richtig?

Wenn jemand eine ausführliche Pandas-Doku kennt,
die solche Dinge mit vielen Beispielen abhandeln, freue ich mich auch über den Tip.
Sirius3
User
Beiträge: 17750
Registriert: Sonntag 21. Oktober 2012, 17:20

@Stephan12: »astype« wandelt ja keine Datentypen um, sondern interpretiert nur den Speicherinhalt anders. Wenn Du also datetime64 haben willst, mußt Du schon die Strings beim Einlesen der csv-Datei umwandeln. Dazu kennt numpy.loadtxt den converter-Parameter.
BlackJack

@Stephan12: Was hast Du denn schon probiert? `pandas.read_csv()` kennt ja ein paar Argumente die das Parsen von Datumsinformationen beeinflussen.
Stephan12
User
Beiträge: 20
Registriert: Mittwoch 29. Januar 2014, 14:52

Hallo,
ich habs inzwischen geschafft, habe gesehen, daß man bei read_csv auch mehrere Spalten angeben kann,
die als Datum konvertiert werden sollen. Damit gings dann.
Antworten