无法将日期转换为datetime64

时间:2013-04-23 00:08:39

标签: python numpy pandas

以下代码:

import pandas as pd
import numpy as np

data = pd.DataFrame({'date': ('13/02/2012', '14/02/2012')})
data['date'] = data['date'].astype('datetime64')

在一台机器(Windows)上运行正常,在另一台机器(linux)上运行不正常。 numpy和pandas都安装在两者上。

我得到的错误是:

ValueError: Cannot create a NumPy datetime other than NaT with generic units

这个错误是什么意思?我有史以来第一次看到它,我在网上找不到多少。是否缺少一些依赖?

1 个答案:

答案 0 :(得分:19)

这样做。 Pandas将日期时间内部保留为datetime64[ns]。转换 像这样是非常多的(因为各种numpy版本中的问题,特别是1.6.2)。使用 pandas例程,然后像这些操作是实际的日期时间对象。你想做什么?

In [30]: pandas.to_datetime(data['date'])
Out[30]: 
0   2012-02-13 00:00:00
1   2012-02-14 00:00:00
Name: date, dtype: datetime64[ns]