Ich habe zwei datetime
Spalten. Eine Spalte enthält alle gültigen Daten und die andere Spalte enthält keine Datumsfelder, daher gibt es einige NaT
. Das Problem ist, dass ich den Unterschied zwischen 2 Spalten nehmen muss, aber immer wenn NaT
Wert in der zweiten Spalte ist, sollte die resultierende Spalte sehr großen Wert sagen 100000. Hier ist das Beispiel:Python: Datumsunterschied, wenn ein Datum ist NAT
Eingabedaten:
signup_date bgc_date
2016-01-02 NaT
2016-01-21 NaT
2016-01-11 2016-01-11
2016-01-29 2016-01-30
Erwartete Ausgabe
`signup_date bgc_date difference
2016-01-02 NaT 100000
2016-01-21 NaT 100000
2016-01-11 2016-01-11 0
2016-01-29 2016-01-30 1`
Was habe ich versucht:
for i in range(len(df2)):
if pd.notnull(df2[i]['bgc_date']):
df2[i]['diff'] = df2[i]['bgc_date']- df2[i]['signup_date']
else:
df2[i]['diff']=10000
Dies führt jedoch zu einem Fehler. Kann jemand pls helfen.
ich diesen Fehler: 'Typeerror: Datentyp„Datumzeit“nicht understood' – user4943236
Können Sie ein wenig diagnostizieren Auf welchen Teil wirft der Fehler? Stellen Sie sicher, dass beide Spalten "bgc_date" und "signup_date" vom Datentyp "Datum" sind. Wenn Sie 'pd.to_datetime' nicht zum Konvertieren verwenden. – Psidom