Как преобразовать numpy.recarray в numpy.array?

Какой лучший способ преобразовать numpy преобразовать в обычный массив?

я мог бы сначала сделать .tolist () , а затем снова выполнить array () , но это кажется несколько неэффективно ..

Пример:

import numpy as np
a = np.recarray((2,), dtype=[('x', int), ('y', float), ('z', int)])

>>> a
  rec.array([(30408891, 9.2944097561804909e-296, 30261980),
   (44512448, 4.5273310988985789e-300, 29979040)], 
  dtype=[('x', '<i4'), ('y', '<f8'), ('z', '<i4')])

>>> np.array(a.tolist())
   array([[  3.04088910e+007,   9.29440976e-296,   3.02619800e+007],
   [  4.45124480e+007,   4.52733110e-300,   2.99790400e+007]])
14
задан Steven Rumbalski 20 October 2011 в 21:27
поделиться