[Numpy-discussion] optimise operation in array with datetime objects

Timmie timmichelsen at gmx-topmail.de
Wed Jan 28 15:56:04 EST 2009


Hello,
I have an array of datetime objects.

What is the most efficient way of creating a new array
 with only the hours or minutes out of it?

Here is an example:

### imports
import numpy as np
import datetime as dt

### create some data
d = dt.datetime.now()

dates_li = []
count = 0
for i in range(0, 24):
	count = count +1
	fact = count * 3600
	date_new = d + dt.timedelta(0, fact)
	print date_new
	dates_li.append(date_new)

### the array with datetime objects
dates_array = np.array(dates_li)


### this is the loop I would like to optimize:
### looping over arrays is considered inefficient.
### what could be a better way?
hours_array = dates_array.copy()
for i in range(0, dates_array.size):
	hours_array[i] = dates_array[i].hour

hours_array = hours_array.astype('int')

####
	
Thanks in advance for any hints!

Kind regards,
Timmie




More information about the NumPy-Discussion mailing list