Numpy: asigna tipos de datos de columna (dtype) a la matriz existente

Tengo una matriz dada:

array = [(u'Andrew', -3, 3, 100.032) (u'Bob', -4, 4, 103.323) (u'Joe', -5, 5, 154.324)] 

que se genera a partir de otro proceso (que no puedo controlar) de tomar una tabla CSV y genera esta matriz numpy. Ahora necesito asignar los dtypes de las columnas para hacer un análisis más detallado.

¿Cómo puedo hacer esto?

Gracias

Esto es lo que necesitas ?

 new_array = np.array(array, dtype = [("name", object), ("N1", int), ("N2", int), ("N3", float)]) 

donde nombre y N1-3 son nombres de columnas que di.

Da :

 array([(u'Andrew', -3, 3, 100.032), (u'Bob', -4, 4, 103.323), (u'Joe', -5, 5, 154.324)], dtype=[('name', 'O'), ('N1', ' 

Puedes ordenar en "N1" por ejemplo:

 new_array.sort(order="N1") new_array array([(u'Joe', -5, 5, 154.324), (u'Bob', -4, 4, 103.323), (u'Andrew', -3, 3, 100.032)], dtype=[('name', 'O'), ('N1', ' 

Espero que esto ayude.

 recarr = np.rec.fromrecords(array) 

Opcionalmente establecer nombres de campo:

 recarr = np.rec.fromrecords(array, names="name, idata, idata2, fdata")