Znanost o podacima

Vodič za Python Seaborn

Vodič za Python Seaborn
U ovoj ćemo lekciji o knjižnici Python Seaborn pogledati različite aspekte ove biblioteke za vizualizaciju podataka koju možemo koristiti s Pythonom za generiranje lijepih i intuitivnih grafova koji mogu vizualizirati podatke u obliku koji posao želi od platforme. Da bi ova lekcija bila cjelovita, obradit ćemo sljedeće odjeljke:

Ovo izgleda puno za pokriti. Krenimo odmah.

Što je Python Seaborn knjižnica?

Seaborn knjižnica je Python paket koji nam omogućuje izradu infografika na temelju statističkih podataka. Kako je napravljen na vrhu matplotliba, tako je i sam po sebi kompatibilan s njim. Uz to, podržava strukturu podataka NumPy i Pandas, tako da se crtanje može izravno izvesti iz tih zbirki.

Vizualizacija složenih podataka jedna je od najvažnijih stvari o kojima Seaborn brine. Ako bismo usporedili Matplotlib s Seabornom, Seaborn je u stanju olakšati one stvari koje je teško postići s Matplotlibom. Međutim, važno je napomenuti da Seaborn nije alternativa Matplotlibu već njegov dodatak. Kroz ovu lekciju koristit ćemo funkcije Matplotlib i u isječcima koda. Za rad s Seabornom odabrat ćete u sljedećim slučajevima korištenja:

Samo napominjemo prije početka da za ovu lekciju koristimo virtualno okruženje koje smo napravili sljedećom naredbom:

python -m virtualenv morski rođeni
izvor seaborn / bin / activate

Jednom kada je virtualno okruženje aktivno, možemo instalirati knjižnicu Seaborn u virtualno okruženje tako da se mogu izvršiti primjeri koje sljedeći kreiramo:

pip instalirati seaborn

Anacondu možete koristiti i za pokretanje ovih primjera, što je lakše. Ako ga želite instalirati na svoj stroj, pogledajte lekciju koja opisuje „Kako instalirati Anaconda Python na Ubuntu 18.04 LTS ”i podijelite svoje povratne informacije. Sada, krenimo naprijed prema različitim vrstama zapleta koji se mogu konstruirati pomoću Python Seaborna.

Korištenje Pokemon skupa podataka

Da bismo održali ovu lekciju praktičnom, koristit ćemo Pokemon skup podataka koji se može preuzeti s Kagglea. Za uvoz ovog skupa podataka u naš program koristit ćemo knjižnicu Pandas. Evo svih uvoza koje obavljamo u našem programu:

uvoziti pande kao pd
iz matplotlib import pyplot kao plt
uvoziti seaborn kao sns

Sada možemo uvesti skup podataka u naš program i prikazati neke uzorke podataka s Pandama kao:

df = pd.read_csv ('Pokemon.csv ', index_col = 0)
df.glava ()

Imajte na umu da bi za pokretanje gornjeg isječka koda CSV skup podataka trebao biti prisutan u istom direktoriju kao i sam program. Jednom kada pokrenemo gornji isječak koda, vidjet ćemo sljedeći izlaz (u bilježnici Anaconde Jupyter):

Crtanje krivulje linearne regresije

Jedna od najboljih stvari kod Seaborna su inteligentne funkcije crtanja koje pruža, a koje ne samo vizualiziraju skup podataka koji mu pružamo, već i konstruiraju regresijske modele oko njega. Na primjer, moguće je konstruirati linearnu regresijsku plohu s jednim retkom koda. Evo kako to učiniti:

sns.lmplot (x = 'Napad', y = 'Obrana', podaci = df)

Jednom kada pokrenemo gornji isječak koda, vidjet ćemo sljedeći izlaz:

Primijetili smo nekoliko važnih stvari u gornjem isječku koda:

Ne bojte se ako ste mislili da ne možemo imati zaplet bez te regresione linije. Možemo ! Pokušajmo sada s isječkom koda, sličnim posljednjem:

sns.lmplot (x = 'Napad', y = 'Obrana', podaci = df, fit_reg = Netačno)

Ovaj put na našoj parceli nećemo vidjeti liniju regresije:

Sada je ovo mnogo jasnije (ako nam ne treba linearna linija regresije). Ali ovo još nije samo gotovo. Seaborn nam omogućuje da razlikujemo ovu radnju i to ćemo raditi.

Izgradnja parcela s kutijama

Jedna od najvećih značajki Seaborna je kako lako prihvaća strukturu Pandas Dataframes za crtanje podataka. Jednostavno možemo proslijediti Dataframe knjižnici Seaborn kako bi mogao iz njega izraditi boxplot:

sns.ploča (podaci = df)

Jednom kada pokrenemo gornji isječak koda, vidjet ćemo sljedeći izlaz:

Možemo ukloniti prvo čitanje totalnog podatka jer to izgleda pomalo neugodno kad ovdje zapravo crtamo pojedinačne stupce:

statistika_df = df.pad (['Ukupno'], os = 1)
# Nova ploča pomoću stats_df
sns.boxplot (podaci = stats_df)

Jednom kada pokrenemo gornji isječak koda, vidjet ćemo sljedeći izlaz:

Plac roja s Seabornom

Možemo konstruirati intuitivan dizajn Swarm zavjere s Seabornom. Ponovno ćemo koristiti podatkovni okvir iz Panda koje smo ranije učitali, ali ovaj put pozvat ćemo Matplotlibovu funkciju show kako bismo prikazali radnju koju smo napravili. Evo isječka koda:

sns.set_context ("papir")
sns.swarmplot (x = "Napad", y = "Obrana", podaci = df)
plt.pokazati()

Jednom kada pokrenemo gornji isječak koda, vidjet ćemo sljedeći izlaz:

Korištenjem konteksta Seaborn, dopuštamo Seabornu da doda osobni dodir i fluidan dizajn radnje. Ovu je plohu moguće dodatno prilagoditi prilagođenom veličinom fonta koja se koristi za naljepnice na ploči kako bi se olakšalo čitanje. Da bismo to učinili, proslijedit ćemo više parametara funkciji set_context koja se izvodi baš onako kako zvuče. Na primjer, za izmjenu veličine fonta naljepnica poslužit ćemo se fontom.parametar veličine. Evo isječka koda za izmjenu:

sns.set_context ("papir", font_scale = 3, rc = "font.veličina ": 8," osi.veličina oznake ": 5)
sns.swarmplot (x = "Napad", y = "Obrana", podaci = df)
plt.pokazati()

Jednom kada pokrenemo gornji isječak koda, vidjet ćemo sljedeći izlaz:

Veličina fonta za naljepnicu promijenjena je na temelju parametara koje smo naveli i vrijednosti pridružene fontu.parametar veličine. Jedna stvar u kojoj je Seaborn stručan je učiniti radnju vrlo intuitivnom za praktičnu upotrebu, a to znači da Seaborn nije samo praktični Python paket, već zapravo nešto što možemo koristiti u našim produkcijskim implementacijama.

Dodavanje naslova parcelama

Lako je dodati naslove u naše radnje. Samo trebamo slijediti jednostavan postupak korištenja funkcija na razini osi gdje ćemo nazvati set_title () funkcija kao što je prikazano u isječku koda ovdje:

sns.set_context ("papir", font_scale = 3, rc = "font.veličina ": 8," osi.veličina oznake ": 5)
my_plot = sns.swarmplot (x = "Napad", y = "Obrana", podaci = df)
moj_zaplet.set_title ("LH rojev")
plt.pokazati()

Jednom kada pokrenemo gornji isječak koda, vidjet ćemo sljedeći izlaz:

Na taj način našim parcelama možemo dodati puno više informacija.

Seaborn vs Matplotlib

Dok smo gledali primjere u ovoj lekciji, možemo prepoznati da se Matplotlib i Seaborn ne mogu izravno uspoređivati, ali se mogu vidjeti kao međusobno nadopunjavanje. Jedna od značajki koja vodi Seaborn 1 korak naprijed je način na koji Seaborn statistički može vizualizirati podatke.

Kako bismo najbolje iskoristili Seaborn parametre, toplo preporučujemo da pogledate Seaborn dokumentaciju i saznate koje parametre koristiti kako bi vaša parcela bila što bliža poslovnim potrebama.

Zaključak

U ovoj smo lekciji pogledali različite aspekte ove biblioteke za vizualizaciju podataka koju možemo koristiti s Pythonom za generiranje lijepih i intuitivnih grafikona koji mogu vizualizirati podatke u obliku koji posao želi od platforme. Seaborm je jedna od najvažnijih biblioteka za vizualizaciju kada je riječ o inženjerstvu podataka i prezentiranju podataka u većini vizualnih oblika, što je definitivno vještina koju trebamo imati ispod pojasa jer nam omogućuje izgradnju modela linearne regresije.

Molimo podijelite svoje povratne informacije o lekciji na Twitteru s @sbmaggarwal i @LinuxHint.

GPU Najbolji CPU i GPU za Blender renderiranje
Najbolji CPU i GPU za Blender renderiranje
Blender je svestran alat za 3D stvaranje. Blender ima čitav niz 3D grafike i stvaranja vizualnih efekata. Blender je robusni softver za modeliranje, o...
GPU Koja je najbolja grafička kartica za dubinsko učenje?
Koja je najbolja grafička kartica za dubinsko učenje?
Ako je CPU mozak računala, onda je GPU duša. Iako većina računala može raditi bez dobrog GPU-a, dubinsko učenje nije moguće bez njega. To je zato što ...
GPU Kako iskopati kriptovalute s GPU rudarskim opremama
Kako iskopati kriptovalute s GPU rudarskim opremama
Kao što možda već znate, više nije moguće iskopati Bitcoin i mnoge druge kriptovalute pomoću CPU-a (Central Processing Unit) i ostvariti dobit jer su ...