from sklearn.preprocessing import StandardScaler
standardized_data = StandardScaler().fit_transform(your_data)
Ejemplo:
>>> import numpy as np
>>> from sklearn.preprocessing import StandardScaler
>>> data = np.random.randint(25, size=(4, 4))
>>> data
array([[17, 12, 4, 17],
[ 1, 16, 19, 1],
[ 7, 8, 10, 4],
[22, 4, 2, 8]])
>>> standardized_data = StandardScaler().fit_transform(data)
>>> standardized_data
array([[ 0.63812398, 0.4472136 , -0.718646 , 1.57786412],
[-1.30663482, 1.34164079, 1.55076242, -1.07959124],
[-0.57735027, -0.4472136 , 0.18911737, -0.58131836],
[ 1.24586111, -1.34164079, -1.02123379, 0.08304548]])
funciona bien en grandes conjuntos de datos.
Definir el "cambio". ¿Qué pasa si, digamos, simplemente reemplazamos la matriz con la matriz de identidad o algo así? ¿Qué tipos de transformaciones están bien? –
Solo por curiosidad, ¿por qué necesitas hacer esto? –
Estoy tratando de implementar un algoritmo de visión por computadora que solicite que esta operación se realice en los pasos intermedios. Creo que es porque es un requisito para PCA, pero no estoy seguro. – pnodbnda