Normalizácia údajov v Pythone

Normalization Data Python



Normalizácia údajov je technika, ktorá pomáha rýchlejšie dosiahnuť výsledok, pretože stroj musí spracovať menší rozsah údajov. Normalizácia nie je ľahká úloha, pretože všetky vaše výsledky závisia od výberu metódy normalizácie. Ak ste teda vybrali nesprávnu metódu normalizácie údajov, môže sa stať, že od svojich očakávaní získate niečo iné.

Normalizácia závisí aj od typu údajov, ako sú obrázky, text, číslice atď. Každý typ údajov má preto inú metódu normalizácie. V tomto článku sa teda zameriavame na číselné údaje.







Metóda 1: Použitie sklearn

Metóda sklearn je veľmi známou metódou na normalizáciu údajov.





V bunke číslo [83] : Importujeme všetky požadované knižnice, NumPy a sklearn. Môžete vidieť, že predbežné spracovanie importujeme zo samotného sklearnu. Preto je to metóda normalizácie sklearnu.





V bunke číslo [84] : Vytvorili sme pole NumPy s celou hodnotou, ktorá nie je rovnaká.

V bunke číslo [85] : Z predbežného spracovania sme zavolali metódu normalizácie a odovzdali sme numpy_array, ktorý sme práve vytvorili ako parameter.



V bunke číslo [86] : Z výsledkov vidíme, že všetky naše celočíselné údaje sú teraz normalizované medzi 0 a 1.

Metóda 2: Normalizácia konkrétneho stĺpca v množine údajov pomocou sklearn

Môžeme tiež normalizovať konkrétny stĺpec množiny údajov. V tomto budeme o tom diskutovať.


V bunke číslo [87] : Dovážame knižnice pandy a sklearn.

V bunke číslo [88] : Vytvorili sme fiktívny súbor CSV a tento súbor CSV teraz načítavame pomocou balíka pandas (read_csv).

V bunke číslo [89] : Vytlačíme ten súbor CSV, ktorý sme nedávno nahrali.

V bunke číslo [90] : Čítame príslušný stĺpec súboru CSV pomocou príkazu np. zoradiť a uložiť výsledok do value_array.

V bunke číslo [92] , z predbežného spracovania sme zavolali metódu normalizácie a odovzdali sme parameter value_array.

Metóda 3: Konvertujte na normalizáciu bez použitia stĺpcov na pole (pomocou sklearn)

V predchádzajúcej metóde 2 sme diskutovali o tom, ako by sme mohli normalizovať konkrétny stĺpec súboru CSV. Niekedy však potrebujeme normalizovať celý súbor údajov, potom môžeme použiť nižšie uvedenú metódu, kde normalizujeme celý súbor údajov, ale pozdĺž stĺpcov (os = 0). Ak spomenieme os = 1, potom to urobí normalizáciu v riadkoch. Os = 1 je predvolená hodnota.


V bunke číslo [93] : Dovážame knižnice pandy a sklearn.

V bunke číslo [94] : Vytvorili sme fiktívny súbor CSV (demo_numeric.csv) a tento súbor CSV teraz načítavame pomocou balíka pandas (read_csv).

V bunke číslo [95] : Vytlačíme ten súbor CSV, ktorý sme nedávno nahrali.

V bunke číslo [96] : Teraz odovzdáme celý súbor CSV spolu s ďalšou ďalšou osou parametra = 0, ktorá knižnici povedala, že používateľ chce normalizovať celý súbor údajov stĺpcovo.

V bunke číslo [97] , vytlačíme výsledok a normalizujeme údaje s hodnotou medzi 0 a 1.

Metóda 4: Použitie MinMaxScaler ()

Sklearn poskytuje aj ďalší spôsob normalizácie, ktorý sme nazvali MinMaxScalar. Je to tiež veľmi populárna metóda, pretože sa ľahko používa.


V bunke číslo [98] : Dovážame všetky požadované balíky.

V bunke číslo [99] : Vytvorili sme fiktívny súbor CSV (demo_numeric.csv) a tento súbor CSV teraz načítavame pomocou balíka pandas (read_csv).

V bunke číslo [100] : Vytlačíme ten súbor CSV, ktorý sme nedávno nahrali.

V bunke číslo [101] : Zavolali sme MinMaxScalar z metódy predbežného spracovania a vytvorili sme na to objekt (min_max_Scalar). Neprešli sme žiadne parametre, pretože potrebujeme normalizovať údaje medzi 0 a 1. Ak však chcete, môžete pridať svoje hodnoty, ktoré sa zobrazia v nasledujúcej metóde.

V bunke číslo [102] : Najprv prečítame všetky názvy stĺpcov na ďalšie použitie na zobrazenie výsledkov. Potom z vytvoreného objektu zavoláme fit_tranform min_max_Scalar a odovzdáme do neho súbor CSV.

V bunke číslo [103] : Získame normalizované výsledky, ktoré sú medzi 0 a 1.

Metóda 5: Použitie MinMaxScaler (feature_range = (x, y))

Sklearn tiež ponúka možnosť zmeniť normalizovanú hodnotu toho, čo chcete. Štandardne normalizujú hodnotu medzi 0 a 1. Existuje však parameter, ktorý sme nazvali feature_range, ktorý môže nastaviť normalizovanú hodnotu podľa našich požiadaviek.

V bunke číslo [104] : Dovážame všetky požadované balíky.

V bunke číslo [105] : Vytvorili sme fiktívny súbor CSV (demo_numeric.csv) a tento súbor CSV teraz načítavame pomocou balíka pandas (read_csv).

V bunke číslo [106] : Vytlačíme ten súbor CSV, ktorý sme nedávno nahrali.

V bunke číslo [107] : Zavolali sme MinMaxScalar z metódy predbežného spracovania a vytvorili sme na to objekt (min_max_Scalar). Ale taktiež odovzdávame ďalší parameter vnútri MinMaxScaler (feature_range). Túto hodnotu parametra nastavíme od 0 do 2. Takže teraz MinMaxScaler normalizuje hodnoty údajov medzi 0 až 2.

V bunke číslo [108] : Najprv prečítame všetky názvy stĺpcov na ďalšie použitie na zobrazenie výsledkov. Potom z vytvoreného objektu zavoláme fit_tranform min_max_Scalar a odovzdáme do neho súbor CSV.

V bunke číslo [109] : Získame normalizované výsledky, ktoré sú medzi 0 a 2.

Metóda 6: Použitie maximálneho absolútneho mierky

Údaje môžeme tiež normalizovať pomocou pand. Tieto funkcie sú tiež veľmi obľúbené pri normalizácii údajov. Maximálne absolútne škálovanie normalizuje hodnoty medzi 0 a 1. Aplikujeme tu .max () a .abs (), ako je uvedené nižšie:

V bunke číslo [110] : Dovážame knižnicu pandov.

V bunke číslo [111] : Vytvorili sme atrapu dátového rámca a tento dátový rámec vytlačili.

V bunke číslo [113] : Zavoláme každý stĺpec a potom rozdelíme hodnoty stĺpcov na .max () a .abs ().

V bunke číslo [114] : Výsledok vytlačíme a z výsledku potvrdíme, že sa naše údaje normalizujú medzi 0 a 1.

Metóda 7: Použitie metódy z-score

Ďalšou metódou, o ktorej budeme diskutovať, je metóda z-skóre. Táto metóda prevádza informácie do distribúcie. Táto metóda vypočíta priemer každého stĺpca a potom ho odčíta od každého stĺpca a nakoniec ho rozdelí so štandardnou odchýlkou. To normalizuje údaje medzi -1 a 1.

V bunke číslo [115] : Vytvorili sme atrapu dátového rámca a tento dátový rámec vytlačili.

V bunke číslo [117] : Vypočítame priemer stĺpca a odčítame ho zo stĺpca. Potom rozdelíme hodnotu stĺpca so štandardnou odchýlkou.

V bunke číslo [118] : Normalizované údaje vytlačíme medzi -1 a 1.

Záver: Videli sme rôzne druhy normalizovaných metód. Medzi nimi je sklearn veľmi známy vďaka podpore strojového učenia. To však závisí od požiadaviek používateľa. Niekedy postačuje funkcia pandy na normalizáciu údajov. Nemôžeme povedať, že existujú iba vyššie uvedené normalizačné metódy. Existuje mnoho spôsobov, ako normalizovať údaje, ktoré závisia aj od typu údajov, ako sú obrázky, číslice, text atď. Zameriavame sa na tieto číselné údaje a Python.