Нормализовать / стандартизировать повторный массив
Интересно, какой лучший способ нормализации / стандартизации numpyrecarray
является. Чтобы было понятно, я говорю не о математической матрице, а о массиве записей, который также имеет, например, текстовые столбцы (например, метки).
a = np.genfromtxt("iris.csv", delimiter=",", dtype=None)
print a.shape
> (150,)
Как видите, я не могу, например. процессa[:,:-1]
так как форма одномерная.
Лучшее, что я нашел, - это перебрать все столбцы:
for nam in a.dtype.names[:-1]:
col = a[nam]
a[nam] = (col - col.min()) / (col.max() - col.min())
Есть более элегантный способ сделать это? Есть ли какой-нибудь метод, такой как «нормализовать» или «стандартизировать» где-нибудь?