Pandas außerhalb der Grenzen des Nanosekunden-Zeitstempels nach dem Offset-Rollforward zuzüglich eines Monats-Offsets
Ich bin verwirrt, wie pandas blies out of bounds für datetime Objekte mit diesen Zeilen:
import pandas as pd
BOMoffset = pd.tseries.offsets.MonthBegin()
# here some code sets the all_treatments dataframe and the newrowix, micolix, mocolix counters
all_treatments.iloc[newrowix,micolix] = BOMoffset.rollforward(all_treatments.iloc[i,micolix] + pd.tseries.offsets.DateOffset(months = x))
all_treatments.iloc[newrowix,mocolix] = BOMoffset.rollforward(all_treatments.iloc[newrowix,micolix]+ pd.tseries.offsets.DateOffset(months = 1))
Hier all_treatments.iloc[i,micolix]
ist ein datetime-set von pd.to_datetime(all_treatments['INDATUMA'], errors='coerce',format='%Y%m%d')
und INDATUMA
Datum Informationen im format 20070125
.
Diese Logik scheint zu funktionieren, die auf mock-Daten (keine Fehler, Daten Sinn machen), so dass ich im moment nicht reproduzieren kann, während es nicht auf meine gesamten Daten, mit folgenden Fehler:
pandas.tslib.OutOfBoundsDatetime: Out of bounds nanosecond timestamp: 2262-05-01 00:00:00
InformationsquelleAutor der Frage László | 2015-10-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Da pandas darstellt, Zeitstempel mit Nanosekunden-Auflösung, die Zeitspanne, die dargestellt werden kann, mit einem 64-bit integer beschränkt sich auf rund 584 Jahre
Und Ihr Wert außerhalb dieses Bereichs liegt 2262-05-01 00:00:00 und somit den outofbounds-Fehler
Gerade aus: http://pandas-docs.github.io/pandas-docs-travis/timeseries.html#timestamp-limitations
InformationsquelleAutor der Antwort jetpackdata.com
Einstellung der
errors
parameter inpd.to_datetime
zu'coerce'
Ursachen Ersatz von out-of-bounds-Werte mitNaT
. Unter Angabe der docs:E. g.:
Dadurch nicht behoben wird, werden die Daten (natürlich), aber immer noch erlaubt die Verarbeitung der nicht-NaT-Datenpunkte.
InformationsquelleAutor der Antwort Pawel Kranzberg