Normalizar / Estandarizar un recarray numpy
e pregunto cuál es la mejor manera de normalizar / estandarizar un @ numrecarray
es. Para que quede claro, no estoy hablando de una matriz matemática, sino de una matriz de registros que también tiene p. columnas textuales (como etiquetas).
a = np.genfromtxt("iris.csv", delimiter=",", dtype=None)
print a.shape
> (150,)
Como puede ver, no puedo, p. procesoa[:,:-1]
ya que la forma es unidimensional.
Lo mejor que encontré es iterar sobre todas las columnas:
for nam in a.dtype.names[:-1]:
col = a[nam]
a[nam] = (col - col.min()) / (col.max() - col.min())
¿Alguna forma más elegante de hacer esto? ¿Hay algún método como "normalizar" o "estandarizar" en alguna parte?