如何比较两个Numpy的日期。datetime64

如何比较两个Numpy的日期。datetime64,numpy,datetime64,Numpy,Datetime64,比较两个numpy.datetime64的日期部分的正确方法是什么 A: 2011-01-10 Type: <type 'numpy.datetime64'> B: 2011-01-10T09:00:00.000000-0700 Type: <type 'numpy.datetime64'> A:2011-01-10类型: B:2011-01-10T09:00:00.000000-0700类型: 上面的示例将通过比较(A==B)返回false您将希望在比较

比较两个numpy.datetime64的日期部分的正确方法是什么

A:  2011-01-10  Type:  <type 'numpy.datetime64'>
B:  2011-01-10T09:00:00.000000-0700  Type:  <type 'numpy.datetime64'>
A:2011-01-10类型:
B:2011-01-10T09:00:00.000000-0700类型:

上面的示例将通过比较(A==B)返回false

您将希望在比较之前通过指定“datetime64[D]”数据类型除去datetime64的时间信息,如下所示:

>>> a = numpy.datetime64('2011-01-10')
>>> b = numpy.datetime64('2011-01-10T09:00:00.000000-0700')
>>> a == b
False
>>> a.astype('datetime64[D]') == b.astype('datetime64[D]')
True
顺便说一句,我无法让numpy根据您为上面的
b
提供的字符串创建
datetime64[D]
值数组。我得到了这个错误:

>>> b = numpy.array(['2011-01-10T09:00:00.000000-0700'], dtype='datetime64[D]')
TypeError: Cannot parse "2011-01-10T09:00:00.000000-0700" as unit 'D' using casting rule 'same_kind'