Python Pandas Tutorial: Lær Pandas til dataanalyse



I denne Python Pandas-tutorial lærer du de forskellige operationer af Pandas. Det inkluderer også en brugssag, hvor du kan analysere dataene ved hjælp af Pandas.

I denne blog vil vi diskutere dataanalyse ved hjælp af Pandas i Python.I dag, er en hot færdighed i branchen, der overgik PHP i 2017 og C # i 2018 med hensyn til den samlede popularitet og brug.Før man taler om Pandaer, skal man forstå begrebet Numpy arrays. Hvorfor? Fordi Pandas er et open source softwarebibliotek, som er bygget oven på . I denne Python Pandas-vejledning tager jeg dig gennem følgende emner, som vil fungere som fundament for de kommende blogs:

Lad os komme igang. :-)





Hvad er Python Pandas?

Pandas bruges til manipulation, analyse og rengøring af data. Python-pandaer er velegnet til forskellige slags data, såsom:

  • Tabeldata med heterogent typede kolonner
  • Bestilte og ikke-ordnede tidsseriedata
  • Vilkårlige matrixdata med række- og kolonnetiketter
  • Umærket data
  • Enhver anden form for observations- eller statistiske datasæt

Hvordan installeres Pandas?

For at installere Python Pandas skal du gå til din kommandolinje / terminal og skrive 'pip install pandas' eller ellers, hvis du har anaconda installeret i dit system, skal du bare indtaste 'conda install pandas'. Når installationen er afsluttet, skal du gå til din IDE (Jupyter, PyCharm osv.) Og blot importere den ved at skrive: “import pandas as pd”



Gå videre i Python pandas tutorial, lad os se på nogle af dens operationer:

Python Pandas operationer

Ved hjælp af Python-pandaer kan du udføre mange operationer med serier, datarammer, manglende data, gruppere efter osv. Nogle af de almindelige operationer til datamanipulation er angivet nedenfor:



PandasOperations - Python Pandas Tutorial - Edureka

Lad os nu forstå alle disse operationer en efter en.

Opskæring af datarammen

For at udføre udskæring af data skal du have en dataramme. Bare rolig, dataramme er en 2-dimensionel datastruktur og et mest almindelige panda-objekt. Så lad os først oprette en dataramme.

Se nedenstående kode for implementering i PyCharm:

importer pandaer som pd XYZ_web = {'Dag': [1,2,3,4,5,6], 'Besøgende': [1000, 700,6000,1000,400,350], 'Bounce_Rate': [20,20, 23,15,10,34]} df = pd.DataFrame (XYZ_web) print (df)

Produktion :

Bounce_Rate Dagsbesøgende 0 20 1 1000 1 20 2700 2 23 3 6000 3 15 4 1000 4 10 5400 5 34 6350

Koden ovenfor konverterer en ordbog til en pandadataramme sammen med indekset til venstre. Lad os nu skære en bestemt kolonne fra denne dataramme. Se billedet nedenfor:

print (df.head (2))

Produktion:

Bounce_Rate-dagbesøgende 0 20 1 1000 1 20 2700

Tilsvarende, hvis du vil have de sidste to rækker af dataene, skal du skrive nedenstående kommando:

print (df. hale (2))

Produktion:

Bounce_Rate-dagsbesøgende 4 10 5400 5 34 6350

Næste i Python Pandas-tutorial, lad os udføre fletning og sammenføjning.

Fletning og sammenføjning

Ved fletning kan du flette to datarammer for at danne en enkelt dataramme. Du kan også bestemme, hvilke kolonner du vil gøre fælles. Lad mig implementere det praktisk, først opretter jeg tre datarammer, som har nogle nøgleværdipar og derefter fletter datarammerne sammen. Se koden nedenfor:

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

Produktion:

importer pandaer som pd df1 = pd.DataFrame ({'HPI': [80,90,70,60], 'Int_Rate': [2,1,2,3], 'IND_GDP': [50,45,45, 67]}, indeks = [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]) flettet = pd.merge (df1, df2) print (flettet)

Som du kan se ovenfor, er de to datarammer flettet til en enkelt dataramme. Nu kan du også angive den kolonne, som du vil gøre fælles. For eksempel vil jeg have, at 'HPI' -kolonnen skal være almindelig, og for alt andet vil jeg have separate kolonner. Så lad mig implementere det praktisk:

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]) flettet = pd.merge (df1, df2, on = 'HPI') print (flettet)

Produktion:

IND_GDP Int_Rate Low_Tier_HPI Ledighed 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

Lad os derefter forstå tilslutning i python pandas tutorial. Det er endnu en praktisk metode til at kombinere to forskelligt indekserede dataframes i et dataframe med et enkelt resultat. Dette svarer meget til 'flet' -operationen, bortset fra at tilslutningsoperationen vil være på 'indekset' i stedet for 'kolonnerne'. Lad os gennemføre det praktisk.

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], 'Ledighed': [1,3,5,6]}, indeks = [2001, 2003,2004,2004]) sluttede sig til = df1. join (df2) print (sammenføjet)

Produktion:

IND_GDP Int_Rate Low_Tier_HPI Ledighed 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

Som du kan bemærke i ovenstående output, er der i år 2002 (indeks) ingen værdi knyttet til kolonnerne 'low_tier_HPI' og 'ledighed', derfor har den udskrevet NaN (ikke et tal). Senere i 2004 er begge værdier tilgængelige, derfor har de udskrevet de respektive værdier.

Du kan muligvis gennemgå denne optagelse af Python Pandas-tutorial, hvor vores instruktør har forklaret emnerne detaljeret med eksempler, der hjælper dig med at forstå dette koncept bedre.

Python til dataanalyse | Python Pandas Vejledning | Python-træning | Edureka


Fortsæt i Python pandas tutorial, lad os forstå, hvordan vi sammenkæder to datarammer.

Sammenkædning

Sammenkædning limer grundlæggende datarammerne sammen. Du kan vælge den dimension, som du vil sammenkæde. Til det skal du bare bruge “pd.concat” og videregive i listen over dataframes for at sammenkæde dem. Overvej nedenstående eksempel.

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]) print (concat)

Produktion:

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

Som du kan se ovenfor, limes de to datarammer sammen i en enkelt dataramme, hvor indekset starter fra 2001 helt op til 2008. Derefter kan du også angive akse = 1 for at deltage, flette eller annullere langs kolonnerne. Se koden nedenfor:

hvad gør tostring i java
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], akse = 1) print (concat)

Produktion:

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

Som du kan ovenfor, er der en masse manglende værdier. Dette sker, fordi datarammerne ikke havde værdier for alle de indekser, du vil sammenkæde på. Derfor skal du sørge for, at du har alle de oplysninger, der passer korrekt, når du deltager eller sammenkædes på aksen.

Skift indeks

Derefter i tutorial til pythonpandas forstår vi, hvordan vi ændrer indeksværdierne i en dataramme. Lad os for eksempel oprette en dataramme med nogle nøgleværdipar i en ordbog og ændre indeksværdierne. Overvej eksemplet nedenfor:

Lad os se, hvordan det rent faktisk sker:

importer pandaer som pd df = pd.DataFrame ({'Dag': [1,2,3,4], 'Besøgende': [200, 100.230.300], 'Bounce_Rate': [20,45,60,10]}) df.set_index ('Day', inplace = True) print (df)

Produktion:

Bounce_Rate Besøgende Dag 1 20200 2 45100 3 60230 4 10300

Som du kan bemærke i output ovenfor, er indeksværdien ændret i forhold til kolonnen 'Dag'.

Skift kolonneoverskrifter

Lad os nu ændre kolonneoverskrifterne i denne python-panda-tutorial. Lad os tage det samme eksempel, hvor jeg vil ændre kolonneoverskriften fra 'Besøgende' til 'Brugere'. Så lad mig implementere det praktisk.

importer pandaer som pd df = pd.DataFrame ({'Dag': [1,2,3,4], 'Besøgende': [200, 100.230.300], 'Bounce_Rate': [20,45,60,10]}) df = df.rename (kolonner = {'Besøgende': 'Brugere'}) print (df)

Produktion:

Bounce_Rate-dagbrugere 0 20 1200 1 45 2100 2 60 3230 3 10 4300

Som du ser ovenfor er kolonneoverskriften 'Besøgende' blevet ændret til 'Brugere'. Næste i python-pandas tutorial, lad os udføre data munging.

Data Munging

I Data munging kan du konvertere bestemte data til et andet format. For eksempel, hvis du har en .csv-fil, kan du også konvertere den til .html eller ethvert andet dataformat. Så lad mig implementere dette praktisk.

importer pandaer som pd land = pd.read_csv ('D: BrugereAayushiDownloadsworld-bank-ungdoms-arbejdsløshedAPI_ILO_country_YU.csv', index_col = 0) country.to_html ('edu.html')

Når du kører denne kode, oprettes en HTML-fil med navnet “edu.html”. Du kan kopiere stien til filen direkte og indsætte den i din browser, som viser dataene i et HTML-format. Se nedenstående skærmbillede:


Næste i vejledningen til pythonpandas, lad os se på en brugssag, der taler om den globale ungdomsarbejdsløshed.

Python Pandas-vejledning: Brug sag til at analysere ungdomsarbejdsløshedsdata

Problemformulering :Du får et datasæt, som består af procentdelen af ​​ledige unge globalt fra 2010 til 2014. Du skal bruge dette datasæt og finde ændringen i procentdelen af ​​unge for hvert land fra 2010-2011.

Lad os først forstå datasættet, der indeholder kolonnerne som landnavn, landekode og året fra 2010 til 2014. Nu bruger vi pandaer, og vi bruger “pd.read_csv” til at læse .csv-filformatfilen.
Se skærmbilledet nedenfor:

Lad os gå videre og udføre dataanalyse, hvor vi finder ud af den procentvise ændring i de ledige unge mellem 2010 og 2011. Så visualiserer vi det samme ved hjælp af bibliotek, som er et kraftigt bibliotek til visualisering i Python. Det kan bruges i Python-scripts, shell, webapplikationsservere og andre GUI-værktøjssæt. Du kan læse mere her:

Lad os nu implementere koden i PyCharm:

importer pandaer som pd import matplotlib.pyplot som plt fra matplotlib import style style.use ('fivethirtyeight') land = pd.read_csv ('D: BrugereAayushiDownloadsworld-bank-ungdoms-arbejdsløshedAPI_ILO_country_YU.csv', index_col = 0) df = land. hoved (5) df = df.set_index (['Landekode']) sd = sd.reindex (kolonner = ['2010', '2011']) db = sd.diff (akse = 1) db.plot (slags = 'bar') plt.show ()

Som du kan se ovenfor, har jeg udført analysen på de 5 øverste rækker i landets dataframe. Dernæst har jeg defineret en indeksværdi til at være 'Landekode' og derefter indeksere kolonnen igen til 2010 og 2011. Derefter har vi endnu en dataramme db, der udskriver forskellen mellem de to kolonner eller den procentvise ændring af ledige unge fra 2010 til 2011. Endelig har jeg plottet en barplot ved hjælp af Matplotlib-biblioteket i Python.


Hvis du nu bemærkede det i ovenstående plot, i Afghanistan (AFG) mellem 2010 og 2011, har der været en stigning i arbejdsløse unge på ca. 0,25%. Så i Angola (AGO) er der en negativ tendens, som betyder, at procentdelen af ​​ledige unge er blevet reduceret. På samme måde kan du udføre analyser på forskellige datasæt.

Jeg håber, at min blog på 'Python Pandas Tutorial' var relevant for dig. For at få dybdegående viden om python sammen med dens forskellige applikationer kan du tilmelde dig live af Edureka med support døgnet rundt og adgang til hele livet.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne 'Python Pandas tutorial' -blog, og vi vender tilbage til dig hurtigst muligt.