为什么numpy.datetime64会给出带有年份数组的错误?

时间:2018-12-19 01:46:09

标签: python numpy datetime

我正在处理日期为2017.08333的某些数据。在将其转换为日期时间对象的过程中,尝试将整数年转换为日期时间时遇到错误。

np.datetime64(['2017','2018'])

以上操作失败,并显示错误:Could not convert object to NumPy datetime

我印象中的numpy函数被矢量化了。有人可以解释为什么这行不通以及如何解决吗?我有3000个要转换的日期,所以不涉及循环的东西是理想的。

3 个答案:

答案 0 :(得分:6)

要创建日期数组,可以执行以下操作:

import numpy as np

print(np.array(['2018', '2017'], dtype=np.datetime64))

输出

['2018' '2017']

可以找到更详细的说明here

答案 1 :(得分:2)

其中一些。我不确定您的输入是什么样(list或np.array),但是您可以执行类似的操作

np.array(['2017', '2018'], dtype=np.datetime64)

my_np_array.astype(np.datetime64)

答案 2 :(得分:0)

您也可以另外使用.jsh

map