python datetime.datetime返回两种不同的类型

时间:2016-05-11 14:30:27

标签: python pandas

我有一个pandas数据帧返回两种不同的类型:

>contrats[["DT_DEB_CTRT","DT_FIN_REELLE"]].ix[0]
DT_DEB_CTRT      2012-01-05:00:00:00
DT_FIN_REELLE    2013-01-31:00:00:00
Name: 0, dtype: object

当我想在datetime中转换日期时,我得到了两种不同的回报:

>contrats.DT_DEB_CTRT = contrats.DT_DEB_CTRT.apply(lambda x : datetime.datetime.strptime(x, "%d%b%Y:00:00:00"))
>contrats.DT_FIN_REELLE = contrats.DT_FIN_REELLE.apply(lambda x : datetime.datetime.strptime(x, "%d%b%Y:00:00:00"))

在一个我得到一个日期时间对象:

>contrats.DT_FIN_REELLE[0]
datetime.datetime(2013, 1, 31, 0, 0)

但另一方面,我得到一个时间戳:

>contrats.DT_DEB_CTRT[0]
Timestamp('2012-01-05 00:00:00')

知道为什么吗?

修改

contrats.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4291241 entries, 0 to 4291240
Data columns (total 15 columns):
DT_DEB_CTRT               object
DT_FIN_REELLE             object
dtypes: float64(7), object(8)
memory usage: 491.1+ MB

1 个答案:

答案 0 :(得分:0)

似乎我在“9999/12/31”中有一个约会,这弄得一团糟。