我有一个数据框df,其中包含以下列:
df['ArrivalDate'] =
...
936 2012-12-31
938 2012-12-29
965 2012-12-31
966 2012-12-31
967 2012-12-31
968 2012-12-31
969 2012-12-31
970 2012-12-29
971 2012-12-31
972 2012-12-29
973 2012-12-29
...
该列的元素是pandas.tslib.Timestamp。
我只想包括年份和月份。我以为会有一种简单的方法,但是我无法弄清楚。
这是我尝试过的:
df['ArrivalDate'].resample('M', how = 'mean')
我收到以下错误:
Only valid with DatetimeIndex or PeriodIndex
然后我尝试了:
df['ArrivalDate'].apply(lambda(x):x[:-2])
我收到以下错误:
'Timestamp' object has no attribute '__getitem__'
有什么建议?
编辑:我想通了。
df.index = df['ArrivalDate']
然后,我可以使用索引对另一列进行重新采样。
但是我仍然想要一种重新配置整个列的方法。有任何想法吗?
to_period
:(df.date_column.dt.month
或.year
,或.day
)工作