Normalització de dades a Python

Normalization Data Python



La normalització de les dades és una tècnica que ajuda a obtenir el resultat més ràpidament, ja que la màquina ha de processar un rang de dades més petit. La normalització no és una tasca fàcil perquè tots els vostres resultats depenen de l’elecció del vostre mètode de normalització. Per tant, si heu triat un mètode incorrecte per normalitzar les vostres dades, és possible que obtingueu alguna cosa diferent de les vostres expectatives.

La normalització també depèn del tipus de dades, com ara imatges, text, numèriques, etc. Per tant, cada tipus de dades té un mètode diferent per normalitzar. Per tant, en aquest article ens centrem en les dades numèriques.







Mètode 1: utilitzar sklearn

El mètode sklearn és un mètode molt famós per normalitzar les dades.





Al número de cel·la [83] : Importem totes les biblioteques necessàries, NumPy i sklearn. Podeu veure que importem el preprocessament des del propi sklearn. Per això, aquest és el mètode de normalització de sklearn.





Al número de cel·la [84] : Hem creat una matriu NumPy amb un valor enter que no és el mateix.

Al número de cel·la [85] : Vam trucar al mètode normalize des del preprocessament i vam passar el numpy_array, que acabem de crear com a paràmetre.



Al número de cel·la [86] : Podem veure pels resultats que ara totes les dades senceres es normalitzen entre 0 i 1.

Mètode 2: normalitzeu una columna concreta en un conjunt de dades mitjançant sklearn

També podem normalitzar la columna de conjunt de dades particular. En això, en parlarem.


Al número de cel·la [87] : Importem els pandes de la biblioteca i escrivim.

Al número de cel·la [88] : Hem creat un fitxer CSV fictici i ara estem carregant aquest fitxer CSV amb l'ajut del paquet pandas (read_csv).

Al número de cel·la [89] : Imprimim el fitxer CSV que hem carregat recentment.

Al número de cel·la [90] : Llegim la columna particular del fitxer CSV mitjançant el np. matriu i emmagatzema el resultat a value_array.

Al número de cel·la [92] , hem anomenat el mètode normalize des del preprocessament i hem passat el paràmetre value_array.

Mètode 3: converteix a normalitzar sense fer servir les columnes per arreglar (mitjançant sklearn)

Al mètode 2 anterior, vam discutir com podríem normalitzar una columna de fitxer CSV en particular. Però, de vegades, hem de normalitzar tot el conjunt de dades i, a continuació, podem utilitzar el mètode següent, on normalitzem tot el conjunt de dades, però al llarg de la columna (eix = 0). Si esmentem l’eix = 1, es normalitzarà en fila. El valor per defecte és l’eix = 1.


Al número de cel·la [93] : Importem els pandes de la biblioteca i escrivim.

Al número de cel·la [94] : Hem creat un fitxer CSV fictici (demo_numeric.csv) i ara estem carregant aquest fitxer CSV amb l'ajut del paquet pandas (read_csv).

Al número de cel·la [95] : Imprimim el fitxer CSV que hem carregat recentment.

Al número de cel·la [96] : Ara, passem tot el fitxer CSV juntament amb un eix de paràmetre addicional = 0, que deia a la biblioteca que l'usuari volia normalitzar tot el conjunt de dades segons les columnes.

Al número de cel·la [97] , imprimim el resultat i normalitzem les dades amb un valor entre 0 i 1.

Mètode 4: utilitzar MinMaxScaler ()

El sklearn també proporciona un altre mètode de normalització, que anomenem MinMaxScalar. Aquest també és un mètode molt popular perquè és fàcil d’utilitzar.


Al número de cel·la [98] : Importem tots els paquets necessaris.

Al número de cel·la [99] : Hem creat un fitxer CSV fictici (demo_numeric.csv) i ara estem carregant aquest fitxer CSV amb l'ajut del paquet pandas (read_csv).

Al número de cel·la [100] : Imprimim el fitxer CSV que hem carregat recentment.

Al número de cel·la [101] : Vam trucar al MinMaxScalar des del mètode de preprocessament i vam crear un objecte (min_max_Scalar) per a això. No hem passat cap paràmetre perquè hem de normalitzar les dades entre 0 i 1. Però si voleu, podeu afegir els vostres valors que es veuran al següent mètode.

Al número de cel·la [102] : Primerament llegim tots els noms de les columnes per utilitzar-los posteriorment per mostrar els resultats. A continuació, anomenem fit_tranform de l'objecte creat min_max_Scalar i passem el fitxer CSV a aquest.

Al número de cel·la [103] : Obtenim els resultats normalitzats entre 0 i 1.

Mètode 5: Utilització de MinMaxScaler (gamma_funció = (x, y))

El sklearn també proporciona l'opció de canviar el valor normalitzat del que voleu. Per defecte, normalitzen el valor entre 0 i 1. Però hi ha un paràmetre que anomenem feature_range, que pot establir el valor normalitzat segons els nostres requisits.

Al número de cel·la [104] : Importem tots els paquets necessaris.

Al número de cel·la [105] : Hem creat un fitxer CSV fictici (demo_numeric.csv) i ara estem carregant aquest fitxer CSV amb l'ajut del paquet pandas (read_csv).

Al número de cel·la [106] : Imprimim el fitxer CSV que hem carregat recentment.

Al número de cel·la [107] : Vam trucar al MinMaxScalar des del mètode de preprocessament i vam crear un objecte (min_max_Scalar) per a això. Però també passem un altre paràmetre dins del MinMaxScaler (feature_range). Aquest valor de paràmetre el vam establir de 0 a 2. Així, ara, el MinMaxScaler normalitzarà els valors de les dades entre 0 i 2.

Al número de cel·la [108] : Primerament llegim tots els noms de les columnes per utilitzar-los posteriorment per mostrar els resultats. A continuació, anomenem fit_tranform de l'objecte creat min_max_Scalar i passem el fitxer CSV a aquest.

Al número de cel·la [109] : Obtenim els resultats normalitzats entre 0 i 2.

Mètode 6: utilitzar l'escala absoluta màxima

També podem normalitzar les dades mitjançant pandes. Aquestes funcions també són molt populars per normalitzar les dades. L'escala absoluta màxima normalitza valors entre 0 i 1. Estem aplicant aquí .max () i .abs () com es mostra a continuació:

Al número de cel·la [110] : Importem la biblioteca dels pandes.

Al número de cel·la [111] : Hem creat un marc de dades fals i el vam imprimir.

Al número de cel·la [113] : Anomenem cada columna i, a continuació, dividim els valors de la columna amb .max () i .abs ().

Al número de cel·la [114] : Imprimim el resultat i, a partir del resultat, confirmem que les nostres dades es normalitzen entre 0 i 1.

Mètode 7: utilitzar el mètode de la puntuació z

El següent mètode que parlarem és el mètode de la puntuació z. Aquest mètode converteix la informació a la distribució. Aquest mètode calcula la mitjana de cada columna i després resta de cada columna i, finalment, la divideix amb la desviació estàndard. Això normalitza les dades entre -1 i 1.

Al número de cel·la [115] : Hem creat un marc de dades fals i el vam imprimir.

Al número de cel·la [117] : Calculem la mitjana de la columna i la restem de la columna. A continuació, dividim el valor de la columna amb la desviació estàndard.

Al número de cel·la [118] : Imprimim les dades normalitzades entre -1 i 1.

Conclusió: hem vist diferents tipus de mètodes normalitzats. Entre ells, sklearn és molt famós pel fet de donar suport a l’aprenentatge automàtic. Però això depèn dels requisits de l'usuari. De vegades, és suficient la funció de pandes per normalitzar les dades. No podem dir que només hi ha mètodes per sobre de normalitzar. Hi ha nombrosos mètodes per fer normalització de dades que també depenen del vostre tipus de dades, com ara imatges, numèriques, de text, etc. Ens centrem en aquestes dades numèriques i Python.