Closed
Description
import pandas as pd
import numpy as np
import datetime as dt
z=dt.date(2010,11,1)
zs=[z+dt.timedelta(days=r) for r in range(5)]
df=pd.DataFrame({'obj':zs, 'b':pd.Timestamp('2010-10-01'),'c':pd.Timestamp('2010-10-01')})
df.dtypes
#df.loc[0:2,'c']=dt.date(2010,10,12) # causes error: long() argument must be a string or a number, not 'datetime.date
df.loc[0:2,'c']=np.datetime64('2010-10-12') # sets to 1970...
df.at[4,'c']=np.datetime64('2010-10-12') # works
df.loc[0:2,'obj']=np.datetime64('2010-10-12') #works
df.loc[0:2,'obj']=dt.date(2010,10,12)
df
ind | b | c | obj |
---|---|---|---|
0 | 2010-10-01 | 1970-01-01 | 2010-10-12 |
1 | 2010-10-01 | 1970-01-01 | 2010-10-12 |
2 | 2010-10-01 | 1970-01-01 | 2010-10-12 |
3 | 2010-10-01 | 2010-10-01 | 2010-11-04 |
4 | 2010-10-01 | 2010-10-12 | 2010-11-05 |
I am using Pandas 0.16.2