df = pd.DataFrame(pd.date_range('20130101', periods=3))
dt64 = np.datetime64('2013-01-01')
res = df - dt64
expected = pd.DataFrame([pd.Timedelta(days=0), pd.Timedelta(days=1),
pd.Timedelta(days=2)])
>>> res
0
0 1970-01-01
1 1970-01-02
2 1970-01-03
>>> expected
0
0 0 days
1 1 days
2 2 days
>>> res == expected
0
0 True
1 True
2 True
So both __sub__
and __eq__
are problematic.
Comment From: jreback
this is a duplicate of #12437