Vizualizácia dát v Pythone s Seaborn

python
vizualizácia dát
seaborn
Vizualizácia dát v Pythone s Seaborn cover image

V súčasnosti už nie je najcennejším zdrojom na svete ropa, ale dáta. Vizualizácia sa stáva dôležitejším nástrojom na pochopenie miliárd riadkov údajov. Prekladom údajov do grafickej reprezentácie, ktorá sa ľahko interpretuje, vizualizácia údajov pomáha pri rozprávaní príbehov údajov zvýraznením relevantných informácií, vzorov a odľahlých hodnôt. Údaje a grafika však musia spolupracovať: Je to umenie integrovať skvelú analýzu so skvelým rozprávaním. V tomto blogovom príspevku vám ukážeme „Sea Born“, jeden z najznámejších vizualizačných nástrojov napísaných v Pythone.

Vizualizačné nástroje

Na vizualizáciu trendov, vzorov, odľahlých hodnôt a vzťahu medzi premennými používame nástroje vizualizácie. Je to veľmi žiadaná zručnosť, najmä pre kariéru v oblasti dátovej vedy.

Seaborn

Seaborn je knižnica na vizualizáciu údajov Pythonu založená na matplotlib. Poskytuje rozhranie na vysokej úrovni na kreslenie atraktívnej a informatívnej štatistickej grafiky.

Funkcie vykresľovania Seaborn:

V seaborn máme 3 kategórie pozemkov

  • Kategorické zápletky.

  • Distribučné pozemky.

  • Vzťahové zápletky.


Kategorické zápletky

Na vizualizáciu tendencií kategorickej premennej alebo na vizualizáciu vzťahu medzi dvoma premennými s aspoň jednou kategorickou premennou používame kategorické vykresľovacie funkcie morského narodenia.

Počítajte zápletku:

  • Zobrazuje počty pozorovaní každej kategórie z kategoriálnej premennej. Jednoducho spočítame počet pozorovaní každej kategórie premennej
seaborn.catplot(kind = 'count',
                data = dataset,
                x    = 'variable')

Count plot

Barový pozemok:

  • Predstavuje odhad tendencie spojitej premennej s výškou obdĺžnika pre každú kategóriu kategorickej premennej. Takže funkcia vykresľovania berie ako vstup dve premenné, jednu, ktorá je spojitá a druhú, ktorá je kategorická. Pre každú kategóriu z premennej_1 vypočítame tendenciu premennej_2.

  • Tendencia môže byť priemer, rozptyl alebo môžete prejsť nejakou vlastnou funkciou...

seaborn.catplot(kind = 'bar',**data = dataset,**
                x    = 'variable_1',**y    = 'variable_2',**
                estimator = np.mean)**

Bar Plot

Plán pásu:

  • Pásový graf je jedným z najjednoduchších a najpriamejších grafov vo vizualizácii údajov, jednoducho nakreslíme body, ktoré predstavujú hodnoty spojitej premennej. Pre každú kategóriu premennej 1 nakreslíme hodnoty premennej 2.

Strip Plot

seaborn.catplot(kind = 'strip',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                jitter = 0.15)

Zápletka roja:

  • Swarm plot je veľmi podobný strip plotu, pretože má presne rovnakú funkčnosť. Jediný rozdiel je v tom, ako zobrazuje body. Zatiaľ čo v pásovom grafe sa môžu dátové body prekrývať, pretože sú náhodne umiestnené na osi x, v rojovom grafe sa uistíme, že sa body nebudú prekrývať tak, že ich uložíme na seba.

  • Nevýhodou je, že ak máme veľa údajových bodov, nebolo by možné ich neprekrývať, takže algoritmus niektoré údajové body vymaže, aby sa neprekrývali.

Swarm Plot

seaborn.catplot(kind = 'swarm',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Krabicová zápletka:

  • Rámčekový graf sa používa na znázornenie distribúcie spojitej premennej pre každú kategóriu kategorickej premennej. Aj keď je to celkom jednoduché, prináša veľa informácií:

  • Hodnoty kvartilov:

Škatuľka má vo vnútri vodorovnú čiaru, ktorá predstavuje medián. Vodorovná čiara hore sú horné kvartily, pod ňou sú dolné kvartily.

  • Odľahlé hodnoty:

Všimnite si, že sú niektoré body mimo rámčeka, tieto body predstavujú odľahlé hodnoty

Box Plot

seaborn.catplot(kind = 'box',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Huslová zápletka:

Namiesto vykresľovania distribučného boxu, husľový graf vykreslí skutočné rozdelenie spojitej premennej pre každú kategóriu kategorickej premennej pomocou KDE ( Kernel Density Estimation )

Violin Plot

seaborn.catplot(kind = 'violin',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Distribučné grafy:

Na vizualizáciu distribúcie spojitých premenných používame funkcie vykresľovania distribúcie morských plodov.

História:

Hist graf predstavuje rozdelenie spojitých premenných pomocou zásobníkov.

Hist Plot

seaborn.distplot(kind = 'hist',
                 data = dataset,
                 x    = 'variable',
                 bins = 20)

KDE zápletka:

Graf Kde predstavuje skutočnú distribúciu údajov pomocou odhadu hustoty jadra.

KDE Plot

seaborn.distplot(kind = 'kde',
                 data = dataset,
                 x    = 'variable')

Môže sa tiež použiť na reprezentáciu bivariačného rozdelenia dvoch spojitých premenných.

KDE Plot

seaborn.distplot(kind = 'kde',
                 data = dataset,
                 x    = 'variable_1',
                 y    = 'variable_2')

Zápletka ECDF:

ECDF graf predstavuje empirickú kumulatívnu distribúciu spojitej premennej.

ECDF Plot

seaborn.distplot(kind = 'ecdf',
                 data = dataset,
                 x    = 'variable')

Vzťahové zápletky:

Na vizualizáciu vzťahu medzi spojitými premennými používame funkcie relačného vykresľovania morských plodov.

Bodový diagram:

  • Zobrazuje vzťah medzi dvoma spojitými premennými jednoduchým vykreslením všetkých údajových bodov.

Scatter Plot

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Čiarovkový graf:

  • Predstavuje vzťah medzi premennými ako spojitú funkciu.

Line Plot

seaborn.relplot(kind = 'line',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2')

Viac funkcií:

Možno ste si všimli, že vo všetkých funkciách vykresľovania používame maximálne dve premenné na jeden graf, ale čo ak chceme do našej vizualizácie zaviesť viac premenných? Našťastie sa o to postaral Seaborn:

Odtieň:

  • Pomocou odtieňa môžeme zaviesť 3. premennú, ktorá je kategorická pre našu vizualizáciu pomocou farebného kódovania, to znamená, že dátové body patriace do rovnakej kategórie tejto 3. premennej budú mať rovnakú farbu.

Hue

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                hue  = 'variable_3')

Veľkosť:

  • Veľkosť je podobná odtieňu, ale namiesto farebného kódovania používa kódovanie veľkosti. Znamená to, že dátové body, ktoré patria do rovnakej kategórie 3. premennej, budú mať rovnakú jedinečnú veľkosť. Rôzne veľkosti znamenajú rôzne kategórie.

Size

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                size = 'variable_3',
                sizes = [50, 100])

Štýl:

  • Takmer to isté ako odtieň a veľkosť, to znamená, že dátové body, ktoré patria do rovnakej kategórie 3. premennej, budú mať rovnaký jedinečný štýl. Bodovým štýlom môže byť bodka, hviezda, krížik, trojuholník, ... nazývame ich značky.

Style

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                style = 'variable_3',
                markers = ['X', '*'])

Novú kategoriálnu premennú môžeme zaviesť aj pomocou násobných grafov, pričom každý graf patrí do kategórie z kategoriálnej premennej:

Col:

Vytvorí veľa obrázkov horizontálne s ohľadom na kategórie 3. premennej.

Col

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                col  = 'variable_3')

Riadok:

Vytvorí veľa obrázkov vertikálne vzhľadom na kategórie 3. premennej.

Row

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                row  = 'variable_3')

Môžeme tiež použiť Hue a Size v rovnakom grafe, aby sme reprezentovali 4 premenné, alebo dokonca Hue and Style a Col, aby sme použili 5 premenných v rovnakom grafe! V tom istom grafe môžeme použiť až 7 premenných (premenná 1, premenná 2, odtieň, veľkosť, štýl, stĺpec, riadok), ale získame veľmi nabitý graf, ktorý je tak chaotický a extrémne ťažko interpretovateľný, niekedy nie. informatívne vôbec.

Hue & Size

seaborn.relplot(kind = 'scatter',
                data = dataset,
                x    = 'variable_1',
                y    = 'variable_2',
                hue  = 'variable_3',
                size = 'variable_4')

Záver:

V tomto príspevku sme sa dozvedeli o seaborn, jeho 3 kategóriách vykresľovacích funkcií: kategoriálne, distribučné a relačné grafy a vysvetlili sme každú funkciu vykresľovania pre každú kategóriu, spolu s kódom python.

Pozrite si náš Data Science Bootcamp, kde sa dozviete viac o tejto téme!


Career Services background pattern

Kariérne služby

Contact Section background image

Ostaňme v kontakte

Code Labs Academy © 2024 Všetky práva vyhradené.