我在一列中有一个带有Timestamp
个条目的数据框,由类似字符串创建:
df = pd.DataFrame({"x": pd.to_datetime("MARCH2016")})
现在,我希望通过访问df
对象的.month
属性,根据月份选择datetime
,逐年切入。但是,to_datetime
实际上是从字符串中创建了一个Timestamp
对象,而我似乎无法将其强制转换为datetime
。以下按预期工作:
type(df.x[0].to_datetime()) # gives datetime object
但是使用apply
(在我现实生活中的例子当然我想做的事情,因为我有一行以上)并不是:
type(df.x.apply(pd.to_datetime)[0]) # returns Timestamp
我错过了什么?
答案 0 :(得分:1)
这是TimeStamp
与此无关的事实,您仍然可以使用month
访问者访问.dt
属性:
In [79]:
df = pd.DataFrame({"x": [pd.to_datetime("MARCH2016")]})
df['x'].dt.month
Out[79]:
0 3
Name: x, dtype: int64