Get year, month or day from numpy datetime64
datetime, numpy, python
Solution
As datetime is not stable in numpy I would use pandas for this:
In [52]: import pandas as pd
In [53]: dates = pd.DatetimeIndex(['2010-10-17', '2011-05-13', "2012-01-15"])
In [54]: dates.year
Out[54]: array([2010, 2011, 2012], dtype=int32)
Pandas uses numpy datetime internally, but seems to avoid the shortages, that numpy has up to now.
Problem
I have an array of datetime64 type: ``` dates = np.datetime64(['2010-10-17', '2011-05-13', "2012-01-15"]) ``` Is there a better way than looping through each element just to get np.array of years: ``` years = f(dates) #output: array([2010, 2011, 2012], dtype=int8) #or dtype = string ``` I'm using stable numpy version 1.6.2.