Az adatok normalizálása Pythonban

Normalization Data Python



Az adatok normalizálása olyan technika, amely segít gyorsabban elérni az eredményt, mivel a gépnek kisebb adattartományt kell feldolgoznia. A normalizálás nem könnyű feladat, mert minden eredmény a normalizálási módszer megválasztásától függ. Tehát, ha rossz módszert választott az adatok normalizálására, előfordulhat, hogy valami mást eredményez, mint amire számít.

A normalizálás az adattípustól is függ, mint a képek, szöveg, numerikus stb. Tehát minden adattípusnak más módszere van a normalizálásra. Tehát ebben a cikkben a numerikus adatokra összpontosítunk.







1. módszer: sklearn használata

A sklearn módszer egy nagyon híres módszer az adatok normalizálására.





A cellaszámban [83] : Importáljuk az összes szükséges könyvtárat, a NumPy -t és a sklearn -t. Láthatja, hogy az előfeldolgozást magából a sklearnből importáljuk. Ezért ez a sklearn normalizálási módszer.





A cellaszámban [84] : Létrehoztunk egy NumPy tömböt, amelynek egész értéke nem azonos.

A cellaszámban [85] : Az előfeldolgozásból hívtuk a normalizálási metódust, és átadtuk a numpy_array -t, amelyet éppen paraméterként hoztunk létre.



A cellaszámban [86] : Az eredményekből láthatjuk, hogy minden egész adatunk 0 és 1 között normalizálódott.

2. módszer: Normalizálja az adott oszlop egy oszlopát a sklearn használatával

Normalizálhatjuk az adott adathalmaz oszlopát is. Ebben fogunk erről beszélni.


A cellaszámban [87] : Importáljuk a könyvtári pandákat és a sklearn -t.

A cellaszámban [88] : Létrehoztunk egy hamis CSV -fájlt, és most betöltjük a CSV -fájlt a pandas (read_csv) csomag segítségével.

A cellaszámban [89] : Kinyomtatjuk azt a CSV -fájlt, amelyet nemrég töltöttünk be.

A cellaszámban [90] : A CSV -fájl adott oszlopát az np használatával olvassuk el. tömböt, és tárolja az eredményt a value_array fájlban.

A cellaszámban [92] , az előfeldolgozásból hívtuk a normalizálási módszert, és átadtuk a value_array paramétert.

3. módszer: Konvertálás normalizálásra az oszlopok tömb használata nélkül (sklearn használatával)

Az előző 2. módszerben megbeszéltük, hogyan normalizálhatjuk egy adott CSV -fájl oszlopát. De néha normalizálnunk kell a teljes adatkészletet, majd használhatjuk az alábbi módszert, ahol normalizáljuk a teljes adathalmazt, de oszloponként (tengely = 0). Ha megemlítjük a tengelyt = 1, akkor soronként normalizálódik. A tengely = 1 alapértelmezett érték.


A cellaszámban [93] : Importáljuk a könyvtári pandákat és a sklearn -t.

A cellaszámban [94] : Létrehoztunk egy hamis CSV -fájlt (demo_numeric.csv), és most betöltjük a CSV -fájlt a pandas (read_csv) csomag segítségével.

A cellaszámban [95] : Kinyomtatjuk azt a CSV -fájlt, amelyet nemrég töltöttünk be.

A cellaszámban [96] : Most átadjuk a teljes CSV-fájlt egy további paramétertengellyel = 0, amely azt mondta a könyvtárnak, hogy a felhasználó oszloponként szeretné normalizálni a teljes adatkészletet.

A cellaszámban [97] , kinyomtatjuk az eredményt és normalizáljuk az adatokat 0 és 1 közötti értékkel.

4. módszer: A MinMaxScaler () használata

A sklearn egy másik normalizálási módszert is kínál, amelyet MinMaxScalarnak neveztünk. Ez is nagyon népszerű módszer, mert könnyen használható.


A cellaszámban [98] : Az összes szükséges csomagot importáljuk.

A cellaszámban [99] : Létrehoztunk egy hamis CSV -fájlt (demo_numeric.csv), és most betöltjük a CSV -fájlt a pandas (read_csv) csomag segítségével.

A cellaszámban [100] : Kinyomtatjuk azt a CSV -fájlt, amelyet nemrég töltöttünk be.

A cellaszámban [101] : Az előfeldolgozási módszerből hívtuk a MinMaxScalar -t, és ehhez létrehoztunk egy objektumot (min_max_Scalar). Nem adtunk meg semmilyen paramétert, mert normalizálnunk kell az adatokat 0 és 1 között. De ha szeretné, hozzáadhatja az értékeit, amelyek a következő módszerben láthatók.

A cellaszámban [102] : Először olvassuk el az oszlopok összes nevét az eredmények megjelenítéséhez. Ezután hívjuk a fit_tranform formátumot a létrehozott objektumból min_max_Scalar és továbbítjuk a CSV fájlt.

A cellaszámban [103] : A normalizált eredményeket kapjuk, amelyek 0 és 1 között vannak.

5. módszer: MinMaxScaler használata (feature_range = (x, y))

A sklearn lehetőséget biztosít a kívánt érték normalizált értékének megváltoztatására is. Alapértelmezés szerint normalizálják az értéket 0 és 1 között. De van egy paraméter, amelyet feature_range -nak neveztünk, amely beállíthatja a normalizált értéket az igényeinknek megfelelően.

A cellaszámban [104] : Az összes szükséges csomagot importáljuk.

A cellaszámban [105] : Létrehoztunk egy hamis CSV -fájlt (demo_numeric.csv), és most betöltjük a CSV -fájlt a pandas (read_csv) csomag segítségével.

A cellaszámban [106] : Kinyomtatjuk azt a CSV -fájlt, amelyet nemrég töltöttünk be.

A cellaszámban [107] : Az előfeldolgozási módszerből hívtuk a MinMaxScalar -t, és ehhez létrehoztunk egy objektumot (min_max_Scalar). De átadunk egy másik paramétert is a MinMaxScaler -ben (feature_range). Ezt a paraméterértéket 0 -ról 2 -re állítjuk. Tehát a MinMaxScaler normalizálja az adatértékeket 0 és 2 között.

A cellaszámban [108] : Először olvassuk el az oszlopok összes nevét az eredmények megjelenítéséhez. Ezután hívjuk a fit_tranform formátumot a létrehozott objektumból min_max_Scalar és továbbítjuk a CSV fájlt.

A cellaszámban [109] : A normalizált eredményeket kapjuk, amelyek 0 és 2 között vannak.

6. módszer: A maximális abszolút skálázás használata

Az adatok normalizálását pandák segítségével is elvégezhetjük. Ezek a funkciók szintén nagyon népszerűek az adatok normalizálásában. A maximális abszolút skálázás normalizálja a 0 és 1 közötti értékeket. Itt a .max () és .abs () értékeket alkalmazzuk az alábbiak szerint:

A cellaszámban [110] : Importáljuk a pandák könyvtárát.

A cellaszámban [111] : Létrehoztunk egy ál adatkeretet, és kinyomtattuk azt.

A cellaszámban [113] : Minden egyes oszlopot meghívunk, majd az oszlopértékeket elosztjuk a .max () és .abs () értékekkel.

A cellaszámban [114] : Kinyomtatjuk az eredményt, és az eredményből megerősítjük, hogy adataink 0 és 1 között normalizálódnak.

7. módszer: A z-score módszer alkalmazása

A következő módszer, amelyet tárgyalni fogunk, a z-score módszer. Ez a módszer átalakítja az információt az elosztássá. Ez a módszer kiszámítja az egyes oszlopok átlagát, majd kivon minden oszlopból, és végül elosztja a szórással. Ez normalizálja az adatokat -1 és 1 között.

A cellaszámban [115] : Létrehoztunk egy ál adatkeretet, és kinyomtattuk azt.

A cellaszámban [117] : Kiszámítjuk az oszlop átlagát, és kivonjuk az oszlopból. Ezután az oszlopértéket elosztjuk a szórással.

A cellaszámban [118] : A normalizált adatokat -1 és 1 között nyomtatjuk.

Következtetés: Különféle normalizált módszereket láttunk. Közülük a sklearn nagyon híres a gépi tanulás támogatása miatt. De ez a felhasználó igényeitől függ. Néha a pandák funkciója elegendő az adatok normalizálásához. Nem mondhatjuk, hogy csak a fenti normalizálási módszerek léteznek. Számos módszer létezik az adatok normalizálására, amelyek az Ön adattípusától is függenek, például képek, numerikus, szöveg stb. Ezekre a numerikus adatokra és a Pythonra összpontosítunk.