Sie direkt den Unterschied zwischen den Daten in Spalte Date2
und die in Date1
nur durch Subtraktion frame['Date1']
von frame['Date2']
nehmen. Das, aus irgendeinem Grunde gibt die Anzahl der Sekunden zwischen den beiden Daten (nur mit Python datetime
Objekten getestet), die Sie in Anzahl der Tage mit einfachen arithmetics umwandeln können:
from sframe import SFrame
from datetime import datetime, timedelta
mydict = {'Date1':[datetime.now(), datetime.now()+timedelta(2)],
'Date2':[datetime.now()+timedelta(10), datetime.now()+timedelta(17)]}
frame = SFrame(mydict)
frame['new_col'] = (frame['Date2'] - frame['Date1']).apply(lambda x: x//(60*60*24))
Ausgang:
+----------------------------+----------------------------+---------+
| Date1 | Date2 | new_col |
+----------------------------+----------------------------+---------+
| 2016-10-02 21:12:14.712556 | 2016-10-12 21:12:14.712574 | 10.0 |
| 2016-10-04 21:12:14.712567 | 2016-10-19 21:12:14.712576 | 15.0 |
+----------------------------+----------------------------+---------+
Sie suchen nach Unterschied in Tagen? – sb0709
Ja. Versuchen Sie jedoch, die Iteration zu vermeiden und stattdessen die Funktion .apply() zu verwenden. – javsckc
'frame ['Date1'] - frame ['Date2']' funktioniert nicht? – Abdou