Normalizacija podatkov v Pythonu

Normalization Data Python



Normalizacija podatkov je tehnika, ki pomaga hitreje doseči rezultat, saj mora stroj obdelati manjši obseg podatkov. Normalizacija ni lahka naloga, saj so vsi vaši rezultati odvisni od izbire vaše metode normalizacije. Če ste torej za normalizacijo podatkov izbrali napačno metodo, boste morda dobili nekaj drugačnega od svojih pričakovanj.

Normalizacija je odvisna tudi od vrste podatkov, kot so slike, besedilo, številke itd. Torej ima vsaka vrsta podatkov drugačno metodo za normalizacijo. Zato se v tem članku osredotočamo na številske podatke.







1. metoda: Uporaba sklearn

Metoda sklearn je zelo znana metoda za normalizacijo podatkov.





V celici številka [83] : Uvažamo vse potrebne knjižnice, NumPy in sklearn. Vidite, da vnaprejšnjo obdelavo uvozimo iz samega sklearna. Zato je to metoda normalizacije sklearna.





V celici številka [84] : Ustvarili smo matriko NumPy z neko celo vrednostjo, ki ni enaka.

V celici številka [85] : Iz predprocesiranja smo poklicali metodo normalize in podali polje numpy_array, ki smo ga pravkar ustvarili kot parameter.



V celici številka [86] : Iz rezultatov lahko vidimo, da so vsi naši celobrojni podatki zdaj normalizirani med 0 in 1.

Metoda 2: Normalizirajte določen stolpec v naboru podatkov s pomočjo sklearn

Prav tako lahko normaliziramo določen stolpec nabora podatkov. V tem se bomo o tem pogovarjali.


V celici številka [87] : Uvažamo knjižnične pande in sklearn.

V celici številka [88] : Ustvarili smo lažno datoteko CSV in jo s pomočjo paketa pandas (read_csv) nalagamo.

V celici številka [89] : Natisnemo tisto datoteko CSV, ki smo jo nedavno naložili.

V celici številka [90] : Preberemo določen stolpec datoteke CSV z uporabo np. matriko in rezultat shranite v matriko value_array.

V celici številka [92] , smo iz predprocesiranja poklicali metodo normalize in podali parameter value_array.

3. način: Pretvorite v normalizacijo brez uporabe stolpcev v nizu (z uporabo sklearn)

V prejšnji metodi 2 smo razpravljali o tem, kako bi lahko določen stolpec datoteke CSV normalizirali. Včasih pa moramo normalizirati celoten nabor podatkov, potem lahko uporabimo spodnjo metodo, kjer normaliziramo celoten nabor podatkov, vendar vzdolž stolpca (os = 0). Če omenimo os = 1, bo to naredilo vrsticno normalizacijo. Os = 1 je privzeta vrednost.


V celici številka [93] : Uvažamo knjižnične pande in sklearn.

V celici številka [94] : Ustvarili smo lažno datoteko CSV (demo_numeric.csv) in to datoteko CSV zdaj nalagamo s pomočjo paketa pandas (read_csv).

V celici številka [95] : Natisnemo tisto datoteko CSV, ki smo jo nedavno naložili.

V celici številka [96] : Zdaj posredujemo celotno datoteko CSV skupaj z eno dodatno osjo parametra = 0, ki je knjižnici dejala, da želi uporabnik po stolpcu normalizirati celoten nabor podatkov.

V celici številka [97] , natisnemo rezultat in normaliziramo podatke z vrednostjo med 0 in 1.

Metoda 4: Uporaba MinMaxScaler ()

Sklearn ponuja tudi drugo metodo normalizacije, ki smo jo poimenovali MinMaxScalar. To je tudi zelo priljubljena metoda, saj je enostavna za uporabo.


V celici številka [98] : Uvozimo vse zahtevane pakete.

V celici številka [99] : Ustvarili smo lažno datoteko CSV (demo_numeric.csv) in to datoteko CSV zdaj nalagamo s pomočjo paketa pandas (read_csv).

V celici številka [100] : Natisnemo tisto datoteko CSV, ki smo jo nedavno naložili.

V celici [101] : Iz metode predhodne obdelave smo poklicali MinMaxScalar in za to ustvarili objekt (min_max_Scalar). Nismo posredovali nobenih parametrov, ker moramo normalizirati podatke med 0 in 1. Če pa želite, lahko dodate svoje vrednosti, ki bodo vidne pri naslednji metodi.

V celici številka [102] : Najprej preberemo vsa imena stolpcev za nadaljnjo uporabo za prikaz rezultatov. Nato iz ustvarjenega objekta pokličemo fit_tranform min_max_Scalar in v to posredujemo datoteko CSV.

V celici številka [103] : Dobimo normalizirane rezultate, ki so med 0 in 1.

Metoda 5: Uporaba MinMaxScaler (feature_range = (x, y))

Sklearn ponuja tudi možnost spreminjanja normalizirane vrednosti želenega. Privzeto normalizirajo vrednost med 0 in 1. Obstaja pa parameter, ki smo ga poimenovali feature_range, ki lahko nastavi normalizirano vrednost glede na naše zahteve.

V celici številka [104] : Uvozimo vse zahtevane pakete.

V celici številka [105] : Ustvarili smo lažno datoteko CSV (demo_numeric.csv) in to datoteko CSV zdaj nalagamo s pomočjo paketa pandas (read_csv).

V celici številka [106] : Natisnemo tisto datoteko CSV, ki smo jo nedavno naložili.

V celici številka [107] : Iz metode predhodne obdelave smo poklicali MinMaxScalar in za to ustvarili objekt (min_max_Scalar). V MinMaxScaler pa posredujemo tudi drug parameter (obseg_območja). To vrednost parametra smo nastavili od 0 do 2. Tako bo MinMaxScaler normaliziral vrednosti podatkov med 0 in 2.

V celici številka [108] : Najprej preberemo vsa imena stolpcev za nadaljnjo uporabo za prikaz rezultatov. Nato iz ustvarjenega objekta pokličemo fit_tranform min_max_Scalar in v to posredujemo datoteko CSV.

V celici [109] : Dobimo normalizirane rezultate, ki so med 0 in 2.

Metoda 6: Uporaba največjega absolutnega skaliranja

Prav tako lahko normaliziramo podatke s pomočjo pand. Te funkcije so zelo priljubljene tudi pri normalizaciji podatkov. Največje absolutno skaliranje normalizira vrednosti med 0 in 1. Tukaj uporabljamo .max () in .abs (), kot je prikazano spodaj:

V celici številka [110] : Uvažamo knjižnico pand.

V celici številka [111] : Ustvarili smo lažni podatkovni okvir in ga natisnili.

V celici številka [113] : Pokličemo vsak stolpec in nato vrednosti stolpca razdelimo z .max () in .abs ().

V celici številka [114] : Natisnemo rezultat in iz njega potrdimo, da se naši podatki normalizirajo med 0 in 1.

7. metoda: Uporaba metode z-score

Naslednja metoda, o kateri bomo razpravljali, je metoda z-score. Ta metoda pretvori informacije v distribucijo. Ta metoda izračuna povprečje vsakega stolpca in nato odšteje od vsakega stolpca ter ga nazadnje deli s standardnim odstopanjem. To normalizira podatke med -1 in 1.

V celici številka [115] : Ustvarili smo lažni podatkovni okvir in ga natisnili.

V celici številka [117] : Izračunamo povprečje stolpca in ga odštejemo od stolpca. Nato vrednost stolpca delimo s standardnim odstopanjem.

V celici številka [118] : Normirane podatke natisnemo med -1 in 1.

Zaključek: Videli smo različne vrste normaliziranih metod. Med njimi je sklearn zelo znan po podpori strojnega učenja. Toda to je odvisno od zahtev uporabnika. Včasih pande dovolj za normalizacijo podatkov. Ne moremo reči, da obstajajo zgoraj navedene normalizirane metode. Obstaja več načinov za normalizacijo podatkov, ki so odvisni tudi od vrste podatkov, kot so slike, številke, besedilo itd. Osredotočamo se na te številčne podatke in Python.