Normalización de datos en Python

Normalization Data Python



La normalización de datos es una técnica que ayuda a obtener el resultado más rápido ya que la máquina tiene que procesar un rango de datos más pequeño. La normalización no es una tarea fácil porque todos sus resultados dependen de la elección de su método de normalización. Por lo tanto, si ha elegido el método incorrecto para normalizar sus datos, es posible que obtenga algo diferente de sus expectativas.

La normalización también depende del tipo de datos como imágenes, texto, numérico, etc. Entonces, cada tipo de datos tiene un método diferente para normalizar. Entonces, en este artículo, nos enfocamos en datos numéricos.







Método 1: usar sklearn

El método sklearn es un método muy famoso para normalizar los datos.





En la celda número [83] : Importamos todas las bibliotecas necesarias, NumPy y sklearn. Puede ver que importamos el preprocesamiento desde el propio sklearn. Es por eso que este es el método de normalización sklearn.





En la celda número [84] : Creamos una matriz NumPy con algún valor entero que no es el mismo.

En la celda número [85] : Llamamos al método normalize desde el preprocesamiento y pasamos el numpy_array, que acabamos de crear como parámetro.



En la celda número [86] : Podemos ver en los resultados que todos nuestros datos enteros ahora están normalizados entre 0 y 1.

Método 2: normalizar una columna en particular en un conjunto de datos usando sklearn

También podemos normalizar la columna del conjunto de datos en particular. En esto, vamos a discutir sobre eso.


En la celda número [87] : Importamos la biblioteca pandas y sklearn.

En la celda número [88] : Creamos un archivo CSV ficticio y ahora lo estamos cargando con la ayuda del paquete pandas (read_csv).

En la celda número [89] : Imprimimos ese archivo CSV que cargamos recientemente.

En la celda número [90] : Leemos la columna particular del archivo CSV usando el np. array y almacene el resultado en value_array.

En la celda número [92] , llamamos al método normalize desde el preprocesamiento y pasamos el parámetro value_array.

Método 3: convertir para normalizar sin usar las columnas a la matriz (usando sklearn)

En el método 2 anterior, discutimos cómo normalizar una columna de archivo CSV en particular. Pero a veces necesitamos normalizar todo el conjunto de datos, luego podemos usar el método siguiente donde normalizamos todo el conjunto de datos pero a lo largo de las columnas (eje = 0). Si mencionamos el eje = 1, entonces se normalizará por filas. El eje = 1 es el valor predeterminado.


En la celda número [93] : Importamos la biblioteca pandas y sklearn.

En la celda número [94] : Creamos un archivo CSV ficticio (demo_numeric.csv), y ahora estamos cargando ese archivo CSV con la ayuda del paquete pandas (read_csv).

En la celda número [95] : Imprimimos ese archivo CSV que cargamos recientemente.

En la celda número [96] : Ahora, pasamos todo el archivo CSV junto con un parámetro adicional adicional axis = 0, que le dijo a la biblioteca que el usuario quería normalizar todo el conjunto de datos en forma de columnas.

En la celda número [97] , imprimimos el resultado y normalizamos los datos con un valor entre 0 y 1.

Método 4: uso de MinMaxScaler ()

El sklearn también proporciona otro método de normalización, que lo llamamos MinMaxScalar. Este también es un método muy popular porque es fácil de usar.


En la celda número [98] : Importamos todos los paquetes requeridos.

En la celda número [99] : Creamos un archivo CSV ficticio (demo_numeric.csv), y ahora estamos cargando ese archivo CSV con la ayuda del paquete pandas (read_csv).

En la celda número [100] : Imprimimos ese archivo CSV que cargamos recientemente.

En la celda número [101] : Llamamos a MinMaxScalar desde el método de preprocesamiento y creamos un objeto (min_max_Scalar) para eso. No pasamos ningún parámetro porque necesitamos normalizar los datos entre 0 y 1. Pero si lo desea, puede agregar sus valores que se verán en el siguiente método.

En la celda número [102] : Primero leemos todos los nombres de las columnas para su uso posterior para mostrar los resultados. Luego llamamos a fit_tranform desde el objeto creado min_max_Scalar y pasamos el archivo CSV a eso.

En la celda número [103] : Obtenemos los resultados normalizados que están entre 0 y 1.

Método 5: Uso de MinMaxScaler (feature_range = (x, y))

El sklearn también brinda la opción de cambiar el valor normalizado de lo que desea. De forma predeterminada, normalizan el valor entre 0 y 1. Pero hay un parámetro que llamamos feature_range, que puede establecer el valor normalizado de acuerdo con nuestros requisitos.

En la celda número [104] : Importamos todos los paquetes requeridos.

En la celda número [105] : Creamos un archivo CSV ficticio (demo_numeric.csv), y ahora estamos cargando ese archivo CSV con la ayuda del paquete pandas (read_csv).

En la celda número [106] : Imprimimos ese archivo CSV que cargamos recientemente.

En la celda número [107] : Llamamos a MinMaxScalar desde el método de preprocesamiento y creamos un objeto (min_max_Scalar) para eso. Pero también pasamos otro parámetro dentro de MinMaxScaler (feature_range). Ese valor de parámetro lo configuramos de 0 a 2. Así que ahora, MinMaxScaler normalizará los valores de datos entre 0 y 2.

En la celda número [108] : Primero leemos todos los nombres de las columnas para su uso posterior para mostrar los resultados. Luego llamamos a fit_tranform desde el objeto creado min_max_Scalar y pasamos el archivo CSV a eso.

En la celda número [109] : Obtenemos los resultados normalizados que están entre 0 y 2.

Método 6: usar la escala absoluta máxima

También podemos normalizar los datos usando pandas. Estas características también son muy populares para normalizar los datos. La escala absoluta máxima normaliza los valores entre 0 y 1. Aquí aplicamos .max () y .abs () como se muestra a continuación:

En la celda número [110] : Importamos la biblioteca de los pandas.

En la celda número [111] : Creamos un marco de datos ficticio e imprimimos ese marco de datos.

En la celda número [113] : Llamamos a cada columna y luego dividimos los valores de la columna con .max () y .abs ().

En la celda número [114] : Imprimimos el resultado y, a partir del resultado, confirmamos que nuestros datos se normalizan entre 0 y 1.

Método 7: uso del método de puntuación z

El siguiente método que vamos a discutir es el método de puntuación z. Este método convierte la información en la distribución. Este método calcula la media de cada columna y luego resta de cada columna y, finalmente, la divide con la desviación estándar. Esto normaliza los datos entre -1 y 1.

En la celda número [115] : Creamos un marco de datos ficticio e imprimimos ese marco de datos.

En la celda número [117] : Calculamos la media de la columna y la restamos de la columna. Luego dividimos el valor de la columna con la desviación estándar.

En la celda número [118] : Imprimimos los datos normalizados entre -1 y 1.

Conclusión: hemos visto diferentes tipos de métodos normalizados. Entre ellos, sklearn es muy famoso porque admite el aprendizaje automático. Pero eso depende de los requisitos del usuario. A veces, la función de pandas para normalizar los datos es suficiente. No podemos decir que solo existen métodos por encima de la normalización. Existen numerosos métodos para realizar la normalización de datos que también dependen de su tipo de datos, como imágenes, números, texto, etc. Nos enfocamos en estos datos numéricos y Python.