Normalisering av data i Python

Normalization Data Python



Normalisering av data er en teknikk som hjelper til med å få resultatet raskere ettersom maskinen må behandle et mindre dataområde. Normalisering er ikke en lett oppgave fordi alle resultatene dine avhenger av valget av din normaliseringsmetode. Så hvis du har valgt feil metode for å normalisere dataene dine, kan du få noe annet enn forventningene dine.

Normaliseringen avhenger også av datatypen som bilder, tekst, numerisk osv. Så hver datatype har en annen metode for å normalisere. Så i denne artikkelen fokuserer vi på numeriske data.







Metode 1: Bruke sklearn

Sklearn -metoden er en veldig kjent metode for å normalisere dataene.





I cellenummer [83] : Vi importerer alle nødvendige biblioteker, NumPy og sklearn. Du kan se at vi importerer forhåndsbehandlingen fra selve sklearn. Derfor er dette sklearn -normaliseringsmetoden.





I cellenummer [84] : Vi opprettet en NumPy -matrise med en heltallsverdi som ikke er den samme.

I cellenummer [85] : Vi kalte normaliseringsmetoden fra forbehandlingen og passerte numpy_array, som vi nettopp opprettet som en parameter.



I cellenummer [86] : Vi kan se fra resultatene, alle våre heltallsdata er nå normalisert mellom 0 og 1.

Metode 2: Normaliser en bestemt kolonne i et datasett ved hjelp av sklearn

Vi kan også normalisere den spesifikke datasettkolonnen. I dette skal vi diskutere det.


I cellenummer [87] : Vi importerer bibliotekets pandaer og sklearn.

I cellenummer [88] : Vi opprettet en dummy CSV -fil, og vi laster nå den CSV -filen ved hjelp av pandas (read_csv) pakken.

I cellenummer [89] : Vi skriver ut den CSV -filen som vi nylig lastet inn.

I cellenummer [90] : Vi leser den spesifikke kolonnen i CSV -filen ved hjelp av np. array og lagre resultatet til value_array.

I cellenummer [92] , kalte vi normaliseringsmetoden fra forbehandlingen og passerte parameteren value_array.

Metode 3: Konverter til normalisering uten å bruke kolonnene til array (ved hjelp av sklearn)

I forrige metode 2 diskuterte vi hvordan vi kunne normalisere en bestemt CSV -filkolonne. Men noen ganger må vi normalisere hele datasettet, så kan vi bruke metoden nedenfor der vi normaliserer hele datasettet, men langs kolonnemessig (akse = 0). Hvis vi nevner aksen = 1, vil den normalisere radvis. Aksen = 1 er som standardverdi.


I cellenummer [93] : Vi importerer bibliotekets pandaer og sklearn.

I cellenummer [94] : Vi opprettet en dummy CSV -fil (demo_numeric.csv), og vi laster nå inn CSV -filen ved hjelp av pandas (read_csv) pakken.

I cellenummer [95] : Vi skriver ut den CSV -filen som vi nylig lastet inn.

I cellenummer [96] : Nå sender vi hele CSV-filen sammen med en ekstra parameterakse = 0, som sa til biblioteket at brukeren ønsket å normalisere hele datasettet kolonnemessig.

I cellenummer [97] , vi skriver ut resultatet og normaliserer data med en verdi mellom 0 og 1.

Metode 4: Bruke MinMaxScaler ()

Sklearn gir også en annen normaliseringsmetode, som vi kalte den MinMaxScalar. Dette er også en veldig populær metode fordi den er enkel å bruke.


I cellenummer [98] : Vi importerer alle nødvendige pakker.

I cellenummer [99] : Vi opprettet en dummy CSV -fil (demo_numeric.csv), og vi laster nå inn CSV -filen ved hjelp av pandas (read_csv) pakken.

I cellenummer [100] : Vi skriver ut den CSV -filen som vi nylig lastet inn.

I cellenummer [101] : Vi kalte MinMaxScalar fra forbehandlingsmetoden og opprettet et objekt (min_max_Scalar) for det. Vi passerte ingen parametere fordi vi må normalisere dataene mellom 0 og 1. Men hvis du vil, kan du legge til verdiene dine som vil bli sett i neste metode.

I cellenummer [102] : Vi leste først alle navnene på kolonnene for videre bruk for å vise resultater. Deretter kaller vi fit_tranform fra det opprettede objektet min_max_Scalar og sendte CSV -filen inn i det.

I cellenummer [103] : Vi får de normaliserte resultatene som er mellom 0 og 1.

Metode 5: Bruke MinMaxScaler (feature_range = (x, y))

Sklearn gir også muligheten til å endre den normaliserte verdien av det du vil ha. Som standard normaliserer de verdien mellom 0 og 1. Men det er en parameter som vi kalte feature_range, som kan sette den normaliserte verdien i henhold til våre krav.

I cellenummer [104] : Vi importerer alle nødvendige pakker.

I cellenummer [105] : Vi opprettet en dummy CSV -fil (demo_numeric.csv), og vi laster nå inn CSV -filen ved hjelp av pandas (read_csv) pakken.

I cellenummer [106] : Vi skriver ut den CSV -filen som vi nylig lastet inn.

I cellenummer [107] : Vi kalte MinMaxScalar fra forbehandlingsmetoden og opprettet et objekt (min_max_Scalar) for det. Men vi passerer også en annen parameter inne i MinMaxScaler (feature_range). Denne parameterverdien setter vi 0 til 2. Så nå vil MinMaxScaler normalisere dataverdiene mellom 0 og 2.

I cellenummer [108] : Vi leste først alle navnene på kolonnene for videre bruk for å vise resultater. Deretter kaller vi fit_tranform fra det opprettede objektet min_max_Scalar og sendte CSV -filen inn i det.

I cellenummer [109] : Vi får de normaliserte resultatene som er mellom 0 og 2.

Metode 6: Bruke maksimal absolutt skalering

Vi kan også normalisere dataene ved hjelp av pandaer. Disse funksjonene er også veldig populære for å normalisere dataene. Maksimal absolutt skalering normaliserer verdier mellom 0 og 1. Vi bruker her .max () og .abs () som vist nedenfor:

I cellenummer [110] : Vi importerer pandaenes bibliotek.

I cellenummer [111] : Vi opprettet en dummy dataramme og skrev ut den dataramen.

I cellenummer [113] : Vi kaller hver kolonne og deler deretter kolonneverdiene med .max () og .abs ().

I cellenummer [114] : Vi skriver ut resultatet, og fra resultatet bekrefter vi at dataene våre normaliserer mellom 0 og 1.

Metode 7: Bruke z-score-metoden

Den neste metoden vi skal diskutere er z-score-metoden. Denne metoden konverterer informasjonen til distribusjonen. Denne metoden beregner gjennomsnittet for hver kolonne og trekker deretter fra hver kolonne og deler den til slutt med standardavviket. Dette normaliserer dataene mellom -1 og 1.

I cellenummer [115] : Vi opprettet en dummy dataramme og skrev ut den dataramen.

I cellenummer [117] : Vi beregner kolonnens gjennomsnitt og trekker den fra kolonnen. Deretter deler vi kolonneverdien med standardavviket.

I cellenummer [118] : Vi skriver ut de normaliserte dataene mellom -1 og 1.

Konklusjon: Vi har sett forskjellige typer normaliserte metoder. Blant dem er sklearn veldig kjent på grunn av å støtte maskinlæring. Men det avhenger av brukerens krav. Noen ganger er pandaer funksjon for å normalisere data tilstrekkelig. Vi kan ikke si at det bare er metoder over normalisering. Det er mange metoder for å gjøre datanormalisering som også avhenger av datatypen din, for eksempel bilder, tall, tekst, etc. Vi fokuserer på disse numeriske dataene og Python.