Normalisering af data i Python

Normalization Data Python



Normalisering af data er en teknik, der hjælper med at få resultatet hurtigere, da maskinen skal behandle et mindre dataområde. Normalisering er ikke en let opgave, fordi alle dine resultater afhænger af valget af din normaliseringsmetode. Så hvis du har valgt den forkerte metode til at normalisere dine data, kan du få noget andet end dine forventninger.

Normaliseringen afhænger også af datatypen som billeder, tekst, numerisk osv. Så hver datatype har en anden metode til at normalisere. Så i denne artikel fokuserer vi på numeriske data.







Metode 1: Brug af sklearn

Sklearn -metoden er en meget berømt metode til at normalisere dataene.





I celle nummer [83] : Vi importerer alle de nødvendige biblioteker, NumPy og sklearn. Du kan se, at vi importerer forarbejdningen fra selve sklearn. Derfor er dette sklearn -normaliseringsmetoden.





I celle nummer [84] : Vi oprettede et NumPy -array med en heltalværdi, der ikke er den samme.

I celle nummer [85] : Vi kaldte normaliseringsmetoden fra forarbejdningen og passerede numpy_array, som vi lige har oprettet som en parameter.



I celle nummer [86] : Vi kan se på resultaterne, at alle heltaldata nu er normaliseret mellem 0 og 1.

Metode 2: Normaliser en bestemt kolonne i et datasæt ved hjælp af sklearn

Vi kan også normalisere den bestemte datasætkolonne. I dette vil vi diskutere det.


I celle nummer [87] : Vi importerer bibliotekspandaerne og sklearn.

I celle nummer [88] : Vi har oprettet en dummy CSV -fil, og vi indlæser nu den CSV -fil ved hjælp af pandas (read_csv) pakken.

I celle nummer [89] : Vi udskriver den CSV -fil, som vi for nylig har indlæst.

I celle nummer [90] : Vi læser den særlige kolonne i CSV -filen ved hjælp af np. array og gem resultatet til value_array.

I celle nummer [92] , kaldte vi normaliseringsmetoden fra forbehandlingen og passerede parameteren value_array.

Metode 3: Konverter til normalisering uden at bruge kolonnerne til array (ved hjælp af sklearn)

I den foregående metode 2 diskuterede vi, hvordan vi til en bestemt CSV -filkolonne kunne normalisere. Men nogle gange er vi nødt til at normalisere hele datasættet, så kan vi bruge nedenstående metode, hvor vi normaliserer hele datasættet, men langs kolonnemæssigt (akse = 0). Hvis vi nævner aksen = 1, så normaliseres den i rækkefølge. Aksen = 1 er som standardværdi.


I celle nummer [93] : Vi importerer bibliotekspandaerne og sklearn.

I celle nummer [94] : Vi har oprettet en dummy CSV -fil (demo_numeric.csv), og vi indlæser nu den CSV -fil ved hjælp af pandas (read_csv) pakken.

I celle nummer [95] : Vi udskriver den CSV -fil, som vi for nylig har indlæst.

I celle nummer [96] : Nu sender vi hele CSV-filen sammen med endnu en ekstra parameterakse = 0, der sagde til biblioteket, at brugeren ønskede at normalisere hele datasættet kolonnemæssigt.

I celle nummer [97] , vi udskriver resultatet og normaliserer data med en værdi mellem 0 og 1.

Metode 4: Brug af MinMaxScaler ()

Sklearn giver også en anden metode til normalisering, som vi kaldte det MinMaxScalar. Dette er også en meget populær metode, fordi den er let at bruge.


I celle nummer [98] : Vi importerer alle de nødvendige pakker.

I celle nummer [99] : Vi har oprettet en dummy CSV -fil (demo_numeric.csv), og vi indlæser nu den CSV -fil ved hjælp af pandas (read_csv) pakken.

I celle nummer [100] : Vi udskriver den CSV -fil, som vi for nylig har indlæst.

I celle nummer [101] : Vi kaldte MinMaxScalar fra forbehandlingsmetoden og oprettede et objekt (min_max_Scalar) til det. Vi passerede ingen parametre, fordi vi skal normalisere dataene mellem 0 og 1. Men hvis du vil, kan du tilføje dine værdier, som vil blive set i den næste metode.

I celle nummer [102] : Vi læste først alle navnene på kolonnerne til yderligere brug for at vise resultater. Derefter kalder vi fit_tranform fra det oprettede objekt min_max_Scalar og overførte CSV -filen til det.

I celle nummer [103] : Vi får de normaliserede resultater, der er mellem 0 og 1.

Metode 5: Brug af MinMaxScaler (feature_range = (x, y))

Sklearn giver også mulighed for at ændre den normaliserede værdi af det, du vil have. Som standard normaliserer de værdien mellem 0 og 1. Men der er en parameter, som vi kaldte feature_range, som kan indstille den normaliserede værdi i henhold til vores krav.

I celle nummer [104] : Vi importerer alle de nødvendige pakker.

I celle nummer [105] : Vi har oprettet en dummy CSV -fil (demo_numeric.csv), og vi indlæser nu den CSV -fil ved hjælp af pandas (read_csv) pakken.

I celle nummer [106] : Vi udskriver den CSV -fil, som vi for nylig har indlæst.

I celle nummer [107] : Vi kaldte MinMaxScalar fra forbehandlingsmetoden og oprettede et objekt (min_max_Scalar) til det. Men vi passerer også en anden parameter inde i MinMaxScaler (feature_range). Denne parameterværdi sætter vi 0 til 2. Så nu vil MinMaxScaler normalisere dataværdierne mellem 0 til 2.

I celle nummer [108] : Vi læste først alle navnene på kolonnerne til yderligere brug for at vise resultater. Derefter kalder vi fit_tranform fra det oprettede objekt min_max_Scalar og overførte CSV -filen til det.

I celle nummer [109] : Vi får de normaliserede resultater, der er mellem 0 og 2.

Metode 6: Brug af den maksimale absolutte skalering

Vi kan også normalisere dataene ved hjælp af pandaer. Disse funktioner er også meget populære til at normalisere dataene. Den maksimale absolutte skalering normaliserer værdier mellem 0 og 1. Vi anvender her .max () og .abs () som vist nedenfor:

I celle nummer [110] : Vi importerer pandaernes bibliotek.

I celle nummer [111] : Vi lavede en dummy dataframe og udskrev den dataramme.

I celle nummer [113] : Vi kalder hver kolonne og opdeler derefter kolonneværdierne med .max () og .abs ().

I celle nummer [114] : Vi udskriver resultatet, og fra resultatet bekræfter vi, at vores data normaliserer mellem 0 og 1.

Metode 7: Brug af z-score-metoden

Den næste metode, som vi vil diskutere, er z-score-metoden. Denne metode konverterer oplysningerne til distributionen. Denne metode beregner middelværdien for hver kolonne og trækker derefter fra hver kolonne og deler den til sidst med standardafvigelsen. Dette normaliserer dataene mellem -1 og 1.

I celle nummer [115] : Vi lavede en dummy dataframe og udskrev den dataramme.

I celle nummer [117] : Vi beregner kolonnens gennemsnit og trækker den fra kolonnen. Derefter deler vi kolonneværdien med standardafvigelsen.

I celle nummer [118] : Vi udskriver de normaliserede data mellem -1 og 1.

Konklusion: Vi har set forskellige slags normaliserede metoder. Blandt dem er sklearn meget berømt på grund af understøttelse af maskinlæring. Men det afhænger af brugerens krav. Nogle gange er pandas funktion til at normalisere data tilstrækkelig. Vi kan ikke sige, at der kun er metoder over normalisering. Der er mange metoder til at normalisere data, der også afhænger af din datatype som billeder, numerisk, tekst osv. Vi fokuserer på disse numeriske data og Python.