Výukový program Python Pandas: Naučte se Pandy pro analýzu dat



V tomto výukovém programu Python Pandas se naučíte různé operace Pandas. Zahrnuje také případ použití, kde můžete data analyzovat pomocí Pandas.

V tomto blogu budeme diskutovat o analýze dat pomocí Pand v Pythonu.Dnes, je horká dovednost v oboru, která překonala PHP v roce 2017 a C # v roce 2018, pokud jde o celkovou popularitu a použití.Než budeme mluvit o Pandách, musíme porozumět konceptu Numpyho polí. Proč? Protože Pandas je open source softwarová knihovna, která je postavena na vrcholu . V tomto výukovém programu Python Pandas vás provedu následujícími tématy, která budou sloužit jako základy pro nadcházející blogy:

Začněme. :-)





Co je Python Pandas?

Pandy se používají pro manipulaci s daty, analýzu a čištění. Pythonové pandy se dobře hodí pro různé druhy dat, například:

  • Tabulková data s heterogenně napsanými sloupci
  • Uspořádaná a neuspořádaná data časových řad
  • Data libovolné matice se štítky řádků a sloupců
  • Neoznačené údaje
  • Jakákoli jiná forma souborů pozorovacích nebo statistických údajů

Jak nainstalovat Pandy?

Chcete-li nainstalovat Python Pandas, přejděte do příkazového řádku / terminálu a zadejte „pip install pandas“, jinak, pokud máte v systému nainstalovanou anakondu, stačí zadat „conda install pandas“. Po dokončení instalace přejděte do svého IDE (Jupyter, PyCharm atd.) A jednoduše jej importujte zadáním: „importovat pandy jako pd“



Pokračujeme v tutoriálu Python pand, pojďme se podívat na některé z jeho operací:

Operace Python Pandas

Pomocí Python pand můžete provádět řadu operací se sériemi, datovými rámci, chybějícími daty, seskupováním atd. Některé běžné operace pro manipulaci s daty jsou uvedeny níže:



rozdíl mezi přetížením a přepsáním metody

PandasOperations - Výukový program pro Python Pandas - Edureka

Nyní pochopíme všechny tyto operace jeden po druhém.

Krájení datového rámce

Aby bylo možné provést krájení dat, potřebujete datový rámec. Nebojte se, datový rámec je dvourozměrná datová struktura a nejběžnější objekt pandy. Nejprve si tedy vytvořme datový rámec.

O implementaci v PyCharmu viz níže uvedený kód:

importovat pandy jako pd XYZ_web = {'Day': [1,2,3,4,5,6], 'Visitors': [1000, 700,6000,1000,400,350], 'Bounce_Rate': [20,20, 23,15,10,34]} df = pd.DataFrame (XYZ_web) tisk (df)

Výstup :

Bounce_Rate Denní návštěvníci 0 20 1 1000 1 20 2 700 2 23 3 6000 3 15 4 1000 4 10 5400 5 34 6350

Výše uvedený kód převede slovník na datový rámec pandy spolu s indexem vlevo. Nyní rozdělme konkrétní sloupec z tohoto datového rámce. Viz obrázek níže:

tisk (df.head (2))

Výstup:

Návštěvníci Bounce_Rate Day 0 20 1 1000 1 20 2 700

Podobně, pokud chcete poslední dva řádky dat, zadejte následující příkaz:

tisk (df.tail (2))

Výstup:

Návštěvníci Bounce_Rate Day 4 10 5 400 5 34 6 350

Dále v kurzu Python Pandas provedeme sloučení a připojení.

Sloučení a připojení

Při slučování můžete sloučit dva datové rámce do jednoho datového rámce. Můžete také rozhodnout, které sloupce chcete označit jako běžné. Dovolte mi, abych to implementoval prakticky, nejprve vytvořím tři datové rámce, které mají pár párů klíč-hodnota, a pak je spojím dohromady. Viz níže uvedený kód:

HPI IND_GDP Int_Rate 0 80 50 2 1 90 45 1 2 70 45 2 3 60 67 3

Výstup:

importovat pandy jako pd df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45, 67]}, index = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3] , 'IND_GDP': [50,45,45,67]}, index = [2005, 2006,2007,2008]) merged = pd.merge (df1, df2) print (merged)

Jak vidíte výše, dva datové rámce se sloučily do jediného datového rámce. Nyní můžete také určit sloupec, který chcete označit jako společný. Například chci, aby byl sloupec „HPI“ společný, a pro všechno ostatní chci samostatné sloupce. Dovolte mi tedy, abych to provedl prakticky:

df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, index = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP' : [50,45,45,67]}, index = [2005, 2006,2007,2008]) merged = pd.merge (df1, df2, on = 'HPI') print (merged)

Výstup:

IND_GDP Int_Rate Low_Tier_HPI Nezaměstnanost 2001 50 2 50,0 1,0 2002 45 1 NaN NaN 2003 45 2 45,0 3,0 2004 67 3 67,0 5,0 2004 67 3 34,0 6,0

Dále to pochopíme spojování v tutoriálu python pandas. Je to ještě další pohodlná metoda, jak kombinovat dva různě indexované datové rámce do jednoho datového rámce s výsledky. To je docela podobné operaci „sloučení“, až na to, že operace připojení bude na „indexu“ místo na „sloupcích“. Realizujme to prakticky.

df1 = pd.DataFrame ({'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, index = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'Low_Tier_HPI': [50,45,67,34], 'Nezaměstnanost': [1,3,5,6]}, index = [2001, 2003,2004,2004]) join = df1. připojit (df2) tisk (připojit)

Výstup:

IND_GDP Int_Rate Low_Tier_HPI Nezaměstnanost 2001 50 2 50,0 1,0 2002 45 1 NaN NaN 2003 45 2 45,0 3,0 2004 67 3 67,0 5,0 2004 67 3 34,0 6,0

Jak si můžete všimnout ve výše uvedeném výstupu, v roce 2002 (index) není sloupcům „low_tier_HPI“ a „nezaměstnanost“ přiřazena žádná hodnota, proto má vytištěný NaN (ne číslo). Později v roce 2004 jsou obě hodnoty k dispozici, proto příslušné hodnoty vytiskla.

Můžete projít touto nahrávkou tutoriálu Python Pandas, kde náš instruktor podrobně vysvětlil témata pomocí příkladů, které vám pomohou lépe pochopit tento koncept.

Python pro analýzu dat | Výukový program pro Python Pandas | Výcvik v Pythonu | Edureka


Pokračujeme v tutoriálu Python pand, pojďme pochopit, jak zřetězit dva datové datové rámce.

Zřetězení

Zřetězení v zásadě spojuje datové rámce dohromady. Můžete vybrat dimenzi, do které chcete zřetězit. K tomu stačí použít soubor „pd.concat“ a předat seznam datových rámců, které se spojí dohromady. Zvažte následující příklad.

df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, index = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP' : [50,45,45,67]}, index = [2005, 2006,2007,2008]) concat = pd.concat ([df1, df2]) tisk (concat)

Výstup:

HPI IND_GDP Int_Rate 2001 80 50 2 2002 90 45 1 2003 70 45 2 2004 60 67 3 2005 80 50 2 2006 90 45 1 2007 70 45 2 2008 60 67 3

Jak vidíte výše, dva datové rámce jsou slepeny dohromady v jednom datovém rámci, kde index začíná od roku 2001 až do roku 2008. Dále můžete také určit osu = 1, abyste se mohli spojit, sloučit nebo zřetězit podél sloupců. Viz níže uvedený kód:

df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45,67]}, index = [2001, 2002,2003,2004]) df2 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP' : [50,45,45,67]}, index = [2005, 2006,2007,2008]) concat = pd.concat ([df1, df2], axis = 1) print (concat)

Výstup:

HPI IND_GDP Int_Rate HPI IND_GDP Int_Rate 2001 80,0 50,0 2,0 NaN NaN NaN 2002 90,0 45,0 1,0 NaN NaN NaN 2003 70,0 45,0 2,0 NaN NaN NaN 2004 60,0 67,0 3,0 NaN NaN NaN 2005 NaN NaN NaN 80,0 50,0 2,0 2006 NaN NaN NaN 90,0 45,0 1,0 2007 NaN NaN NaN 70,0 45,0 2,0 2008 NaN NaN NaN 60,0 67,0 3,0

Jak můžete výše, existuje spousta chybějících hodnot. K tomu dochází, protože datové rámce neměly hodnoty pro všechny indexy, ve kterých chcete zřetězit. Proto byste se měli ujistit, že máte všechny informace správně seřazené, když se připojíte nebo zřetězíte na ose.

Změňte index

Dále v tutoriálu pro python pandy pochopíme, jak změnit hodnoty indexu v datovém rámci. Například vytvořme datový rámec s párem klíčových hodnot ve slovníku a změňte hodnoty indexu. Zvažte následující příklad:

Podívejme se, jak se to vlastně děje:

importovat pandy jako pd df = pd.DataFrame ({'Day': [1,2,3,4], 'Visitors': [200, 100,230,300], 'Bounce_Rate': [20,45,60,10]}) df.set_index ('Day', inplace = True) print (df)

Výstup:

Bounce_Rate Návštěvníci Den 1 20 200 2 45 100 3 60 230 4 10 300

Jak si můžete všimnout ve výstupu výše, hodnota indexu byla změněna s ohledem na sloupec „Den“.

Změňte záhlaví sloupců

Pojďme nyní změnit záhlaví sloupců v tomto výukovém programu python pandas. Vezměme si stejný příklad, kde změním záhlaví sloupce z „Visitors“ na „Users“. Dovolte mi tedy, abych to provedl prakticky.

importovat pandy jako pd df = pd.DataFrame ({'Day': [1,2,3,4], 'Visitors': [200, 100,230,300], 'Bounce_Rate': [20,45,60,10]}) df = df.rename (columns = {'Visitors': 'Users'}) print (df)

Výstup:

Bounce_Rate Day Uživatelé 0 20 1 200 1 45 2 100 2 60 3 230 3 10 4 300

Jak vidíte výše, záhlaví sloupce „Návštěvníci“ bylo změněno na „Uživatelé“. Dále v tutoriálu python pand, pojďme provést munging dat.

Data Munging

V aplikaci Data munging můžete převést konkrétní data do jiného formátu. Například pokud máte soubor .csv, můžete jej také převést do formátu .html nebo do jiného datového formátu. Dovolte mi tedy, abych to provedl prakticky.

importujte pandy jako pd country = pd.read_csv ('D: UsersAayushiDownloadsworld-bank-youth-nezaměstnanostAPI_ILO_country_YU.csv', index_col = 0) country.to_html ('edu.html')

Po spuštění tohoto kódu bude vytvořen soubor HTML s názvem „edu.html“. Cestu k souboru můžete přímo zkopírovat a vložit do prohlížeče, který zobrazuje data ve formátu HTML. Viz níže uvedený snímek obrazovky:


Dále v tutoriálu python pand pojďme se podívat na případ použití, který hovoří o globální nezaměstnanosti mladých lidí.

Výukový program pro Python Pandas: Použít případ k analýze údajů o nezaměstnanosti mladých lidí

Problémové prohlášení :Dostanete datovou sadu, která Skládá se z procentního podílu nezaměstnaných mladých lidí na celém světě od roku 2010 do roku 2014. Musíte použít tento datový soubor a najít změnu v procentním podílu mladých lidí pro každou zemi od 2010-2011.

system.exit (0) java

Nejprve pochopme datovou sadu, která obsahuje sloupce jako Název země, Kód země a rok 2010 až 2014. Nyní pomocí pand použijeme „pd.read_csv“ ke čtení souboru ve formátu .csv.
Viz níže uvedený snímek obrazovky:

Pojďme dále a proveďme analýzu dat, ve které se chystáme zjistit procentuální změnu nezaměstnané mládeže v letech 2010 až 2011. Poté si to vizualizujeme pomocí knihovna, která je výkonnou knihovnou pro vizualizaci v Pythonu. Lze jej použít ve skriptech Pythonu, prostředí, na webových aplikačních serverech a v dalších sadách nástrojů grafického uživatelského rozhraní. Můžete si přečíst více zde:

Nyní implementujme kód v PyCharm:

importovat pandy jako pd import matplotlib.pyplot jako plt z matplotlib import style style.use ('fivethirtyeight') country = pd.read_csv ('D: UsersAayushiDownloadsworld-bank-youth-nezaměstnanostAPI_ILO_country_YU.csv', index_col = 0) df = země. head (5) df = df.set_index (['Country Code']) sd = sd.reindex (columns = ['2010', '2011']) db = sd.diff (axis = 1) db.plot (druh = 'bar') plt.show ()

Jak vidíte výše, provedl jsem analýzu v horních 5 řádcích datového rámce země. Dále jsem definoval hodnotu indexu jako „Country Code“ a poté znovu indexoval sloupec do roku 2010 a 2011. Pak máme ještě jeden datový rámec db, který vytiskne rozdíl mezi těmito dvěma sloupci nebo procentuální změnu nezaměstnané mládeže od roku 2010 do roku 2011. Nakonec jsem nakreslil barplot pomocí knihovny Matplotlib v Pythonu.


Pokud jste si nyní všimli výše uvedeného grafu, v Afghánistánu (AFG) došlo v letech 2010 až 2011 k nárůstu nezaměstnané mládeže o cca. 0,25%. V Angole (AGO) pak dochází k negativnímu trendu, což znamená, že se snížilo procento nezaměstnané mládeže. Podobně můžete provádět analýzu na různých sadách dat.

Doufám, že můj blog na téma „Výukový program pro Python Pandas“ byl pro vás relevantní. Chcete-li získat podrobné znalosti o pythonu a jeho různých aplikacích, můžete se zaregistrovat naživo od společnosti Edureka s nepřetržitou podporou a doživotním přístupem.

Máte na nás dotaz? Uveďte to prosím v sekci komentářů v tomto blogu „Výukový program pro Python Pandas“ a my se vám ozveme co nejdříve.