2015-12-13 102 views
1

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

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

以上例子将通过指定“datetime64 [d]”数据类型比较之前

回答

0

您会想要去除的时间信息datetime64返回false通过比较(A == B),像这样:

>>> 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的创建datetime64[D]值从你给上面b,顺便把字符串数组。我得到这个错误:

>>> 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'