Dataanalyse med Python

I denne artikkelen vil vi diskutere hvordan du gjør dataanalyse med Python. Vi vil diskutere alle slags dataanalyse, det vil si å analysere numeriske data med NumPy, tabelldata med Pandaer, datavisualisering Matplotlib og utforskende dataanalyse.

Dataanalyse med Python

Dataanalyse er teknikken for å samle inn, transformere og organisere data for å ta fremtidige spådommer og informerte datadrevne beslutninger. Det hjelper også å finne mulige løsninger på et forretningsproblem. Det er seks trinn for dataanalyse. De er:

  • Spør eller spesifiser datakrav
  • Forbered eller samle inn data
  • Rengjør og bearbeid
  • Analysere
  • Dele
  • Handle eller rapportere

Dataanalyse med Python



Merk: For å vite mer om disse trinnene, se vår NumPy er en array-behandlingspakke i Python og gir et flerdimensjonalt array-objekt med høy ytelse og verktøy for å jobbe med disse arrayene. Det er den grunnleggende pakken for vitenskapelig databehandling med Python.

Matriser i NumPy

NumPy Array er en tabell med elementer (vanligvis tall), alle av samme type, indeksert med en tuppel av positive heltall. I Numpy kalles antall dimensjoner til matrisen rangeringen til matrisen. En tuppel av heltall som gir størrelsen på matrisen langs hver dimensjon er kjent som formen på matrisen.

Opprette NumPy Array

NumPy-matriser kan opprettes på flere måter, med forskjellige rangeringer. Den kan også lages ved bruk av forskjellige datatyper som lister, tupler, etc. Typen av den resulterende matrisen utledes fra typen elementer i sekvensene. NumPy tilbyr flere funksjoner for å lage matriser med innledende plassholderinnhold. Disse minimerer nødvendigheten av voksende arrays, en kostbar operasjon.

Opprett Array ved hjelp av numpy.empty(shape, dtype=float, order='C')

Python3
import numpy as np b = np.empty(2, dtype = int) print('Matrix b : 
', b) a = np.empty([2, 2], dtype = int) print('
Matrix a : 
', a) c = np.empty([3, 3]) print('
Matrix c : 
', c) 

Produksjon:

Tøm Matrix med pandaer

Tøm Matrix med pandaer

Opprett Array ved hjelp av numpy.zeros(form, dtype = Ingen, rekkefølge = 'C')

Python3
import numpy as np b = np.zeros(2, dtype = int) print('Matrix b : 
', b) a = np.zeros([2, 2], dtype = int) print('
Matrix a : 
', a) c = np.zeros([3, 3]) print('
Matrix c : 
', c) 

Produksjon:

Matrix b :   [0 0]  Matrix a :   [[0 0]  [0 0]]  Matrix c :   [[0. 0. 0.]  [0. 0. 0.]  [0. 0. 0.]] 

Operasjoner på Numpy Arrays

Aritmetiske operasjoner

  • Addisjon:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing addition using arithmetic operator add_ans = a+b print(add_ans) # Performing addition using numpy function add_ans = np.add(a, b) print(add_ans) # The same functions and operations can be used for # multiple matrices c = np.array([1, 2, 3, 4]) add_ans = a+b+c print(add_ans) add_ans = np.add(a, b, c) print(add_ans) 

Produksjon:

[ 7 77 23 130] [ 7 77 23 130] [ 8 79 26 134] [ 7 77 23 130] 
  • Subtraksjon:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing subtraction using arithmetic operator sub_ans = a-b print(sub_ans) # Performing subtraction using numpy function sub_ans = np.subtract(a, b) print(sub_ans) 

Produksjon:

[ 3 67 3 70] [ 3 67 3 70] 
  • Multiplikasjon:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing multiplication using arithmetic # operator mul_ans = a*b print(mul_ans) # Performing multiplication using numpy function mul_ans = np.multiply(a, b) print(mul_ans) 

Produksjon:

[ 10 360 130 3000] [ 10 360 130 3000] 
  • Inndeling:
Python3
import numpy as np # Defining both the matrices a = np.array([5, 72, 13, 100]) b = np.array([2, 5, 10, 30]) # Performing division using arithmetic operators div_ans = a/b print(div_ans) # Performing division using numpy functions div_ans = np.divide(a, b) print(div_ans) 

Produksjon:

[ 2.5 14.4 1.3 3.33333333] [ 2.5 14.4 1.3 3.33333333] 

For mer informasjon, se vår NumPy – Opplæring i aritmetiske operasjoner

NumPy Array-indeksering

Indeksering kan gjøres i NumPy ved å bruke en matrise som en indeks. Når det gjelder snittet, returneres en visning eller en grunn kopi av matrisen, men i indeksmatrisen returneres en kopi av den originale matrisen. Numpy-arrayer kan indekseres med andre arrays eller en hvilken som helst annen sekvens med unntak av tuples. Det siste elementet indekseres med -1 nest sist med -2 ​​og så videre.

Python NumPy Array-indeksering

Python3
# Python program to demonstrate # the use of index arrays. import numpy as np # Create a sequence of integers from # 10 to 1 with a step of -2 a = np.arange(10, 1, -2) print('
 A sequential array with a negative step: 
',a) # Indexes are specified inside the np.array method. newarr = a[np.array([3, 1, 2 ])] print('
 Elements at these indices are:
',newarr) 

Produksjon:

A sequential array with a negative step:   [10 8 6 4 2]   Elements at these indices are:  [4 8 6] 

NumPy Array Slicing

Tenk på syntaksen x[obj] der x er matrisen og obj er indeksen. Skiveobjektet er indeksen i tilfelle av grunnleggende skjæring . Grunnleggende skjæring skjer når obj er:

  • et skiveobjekt som er av formen start: stop: step
  • et heltall
  • eller en tuppel av skiveobjekter og heltall

Alle arrays generert av grunnleggende slicing er alltid visningen i den originale arrayen.

Python3
# Python program for basic slicing. import numpy as np # Arrange elements from 0 to 19 a = np.arange(20) print('
 Array is:
 ',a) # a[start:stop:step] print('
 a[-8:17:1] = ',a[-8:17:1]) # The : operator means all elements till the end. print('
 a[10:] = ',a[10:]) 

Produksjon:

Array is: [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19]  a[-8:17:1] = [12 13 14 15 16]  a[10:] = [10 11 12 13 14 15 16 17 18 19] 

Ellipsis kan også brukes sammen med grunnleggende skjæring. Ellipsis (...) er antallet : objekter som trengs for å lage en seleksjonstuppel av samme lengde som dimensjonene til matrisen.

Python3
# Python program for indexing using basic slicing with ellipsis import numpy as np # A 3 dimensional array. b = np.array([[[1, 2, 3],[4, 5, 6]], [[7, 8, 9],[10, 11, 12]]]) print(b[...,1]) #Equivalent to b[: ,: ,1 ] 

Produksjon:

[[ 2 5]  [ 8 11]] 

NumPy Array Broadcasting

Begrepet kringkasting refererer til hvordan numpy behandler matriser med forskjellige dimensjoner under aritmetiske operasjoner som fører til visse begrensninger, den mindre matrisen kringkastes over den større matrisen slik at de har kompatible former.

La oss anta at vi har et stort datasett, hvert datum er en liste over parametere. I Numpy har vi en 2D-matrise, der hver rad er et datum og antall rader er størrelsen på datasettet. Anta at vi ønsker å bruke en slags skalering på alle disse dataene hver parameter får sin egen skaleringsfaktor eller si at hver parameter multipliseres med en eller annen faktor.

Bare for å ha en klar forståelse, la oss telle kalorier i matvarer ved å bruke en nedbrytning av makronæringsstoffer. Grovt sagt er de kaloririke delene av maten laget av fett (9 kalorier per gram), protein (4 CPG) og karbohydrater (4 CPG). Så hvis vi lister opp noen matvarer (dataene våre), og for hver matliste dens makronæringsstoffnedbrytning (parametre), kan vi multiplisere hvert næringsstoff med kaloriverdien (bruk skalering) for å beregne kalorisammensetningen for hver matvare.

NumPy Array Broadcasting

Med denne transformasjonen kan vi nå beregne all slags nyttig informasjon. For eksempel, hva er det totale antallet kalorier som finnes i mat eller, gitt en oversikt over middagen min, vet hvor mange kalorier jeg fikk fra protein og så videre.

La oss se en naiv måte å produsere denne beregningen på med Numpy:

Python3
import numpy as np macros = np.array([ [0.8, 2.9, 3.9], [52.4, 23.6, 36.5], [55.2, 31.7, 23.9], [14.4, 11, 4.9] ]) # Create a new array filled with zeros, # of the same shape as macros. result = np.zeros_like(macros) cal_per_macro = np.array([3, 3, 8]) # Now multiply each row of macros by # cal_per_macro. In Numpy, `*` is # element-wise multiplication between two arrays. for i in range(macros.shape[0]): result[i, :] = macros[i, :] * cal_per_macro result 

Produksjon:

array([[ 2.4, 8.7, 31.2],  [157.2, 70.8, 292. ],  [165.6, 95.1, 191.2],  [ 43.2, 33. , 39.2]]) 

Kringkastingsregler: Å kringkaste to arrays sammen følger disse reglene:

  • Hvis matrisene ikke har samme rangering, kan du sette formen til den nedre rangerte matrisen med 1-er til begge figurene har samme lengde.
  • De to matrisene er kompatible i en dimensjon hvis de har samme størrelse i dimensjonen eller hvis en av matrisene har størrelse 1 i den dimensjonen.
  • Arrayene kan kringkastes sammen hvis de er kompatible med alle dimensjoner.
  • Etter kringkasting oppfører hver matrise seg som om den hadde en form som er lik elementmessig maksimum av former for de to inngangsmatrisene.
  • I enhver dimensjon der en matrise hadde en størrelse på 1 og den andre matrisen hadde en størrelse større enn 1, oppfører den første matrisen seg som om den ble kopiert langs den dimensjonen.
Python3
import numpy as np v = np.array([12, 24, 36]) w = np.array([45, 55]) # To compute an outer product we first # reshape v to a column vector of shape 3x1 # then broadcast it against w to yield an output # of shape 3x2 which is the outer product of v and w print(np.reshape(v, (3, 1)) * w) X = np.array([[12, 22, 33], [45, 55, 66]]) # x has shape 2x3 and v has shape (3, ) # so they broadcast to 2x3, print(X + v) # Add a vector to each column of a matrix X has # shape 2x3 and w has shape (2, ) If we transpose X # then it has shape 3x2 and can be broadcast against w # to yield a result of shape 3x2. # Transposing this yields the final result # of shape 2x3 which is the matrix. print((X.T + w).T) # Another solution is to reshape w to be a column # vector of shape 2X1 we can then broadcast it # directly against X to produce the same output. print(X + np.reshape(w, (2, 1))) # Multiply a matrix by a constant, X has shape 2x3. # Numpy treats scalars as arrays of shape(); # these can be broadcast together to shape 2x3. print(X * 2) 

Produksjon:

[[ 540 660]  [1080 1320]  [1620 1980]] [[ 24 46 69]  [ 57 79 102]] [[ 57 67 78]  [100 110 121]] [[ 57 67 78]  [100 110 121]] [[ 24 44 66]  [ 90 110 132]] 

Merk: For mer informasjon, se vår Python NumPy opplæring .

Analysere data ved hjelp av pandaer

Python Pandas Brukes for relasjonelle eller merkede data og gir ulike datastrukturer for å manipulere slike data og tidsserier. Dette biblioteket er bygget på toppen av NumPy-biblioteket. Denne modulen importeres vanligvis som:

import pandas as pd 

Her omtales pd som et alias til pandaene. Det er imidlertid ikke nødvendig å importere biblioteket ved å bruke aliaset, det hjelper bare å skrive mindre mengdekode hver gang en metode eller egenskap kalles. Pandaer gir vanligvis to datastrukturer for å manipulere data, de er:

  • Serie
  • Dataramme

Serie:

Panda-serien er en endimensjonal merket array som er i stand til å inneholde data av enhver type (heltall, streng, float, python-objekter, etc.). Akseetikettene kalles samlet indekser. Pandas-serien er ikke annet enn en spalte i et excel-ark. Etiketter trenger ikke være unike, men må være en hashbar type. Objektet støtter både heltalls- og etikettbasert indeksering og gir en rekke metoder for å utføre operasjoner som involverer indeksen.

Panda-serien

Den kan opprettes ved å bruke Series()-funksjonen ved å laste datasettet fra den eksisterende lagringen som SQL, Database, CSV-filer, Excel-filer, etc., eller fra datastrukturer som lister, ordbøker osv.

Python Pandas Creating Series

Python3
import pandas as pd import numpy as np # Creating empty series ser = pd.Series() print(ser) # simple array data = np.array(['g', 'e', 'e', 'k', 's']) ser = pd.Series(data) print(ser) 

Produksjon:

Pnadas-serien

Pnadas-serien

Dataramme:

Pandas DataFrame er en todimensjonal størrelse-muterbar, potensielt heterogen tabelldatastruktur med merkede akser (rader og kolonner). En dataramme er en todimensjonal datastruktur, dvs. data er justert i tabellform i rader og kolonner. Pandas DataFrame består av tre hovedkomponenter, data, rader og kolonner.

Pandas dataramme

Den kan lages ved hjelp av Dataframe()-metoden, og akkurat som en serie kan den også være fra forskjellige filtyper og datastrukturer.

Python Pandas skaper dataramme

Python3
import pandas as pd # Calling DataFrame constructor df = pd.DataFrame() print(df) # list of strings lst = ['Geeks', 'For', 'Geeks', 'is', 'portal', 'for', 'Geeks'] # Calling DataFrame constructor on list df = pd.DataFrame(lst) df 

Produksjon:

Opprette dataramme fra liste

Opprette dataramme fra python-liste

Opprette dataramme fra CSV

Vi kan opprette en dataramme fra CSV-en filer ved hjelp av read_csv() funksjon.

Python Pandas leser CSV

Python3
import pandas as pd # Reading the CSV file df = pd.read_csv('Iris.csv') # Printing top 5 rows df.head() 

Produksjon:

leder av en dataramme

leder av en dataramme

Filtrering av DataFrame

Pandaer dataframe.filter() funksjonen brukes til å undersette rader eller kolonner av dataramme i henhold til etiketter i den angitte indeksen. Merk at denne rutinen ikke filtrerer en dataramme på innholdet. Filteret brukes på etikettene til indeksen.

Python Pandas filterdataramme

Python3
import pandas as pd # Reading the CSV file df = pd.read_csv('Iris.csv') # applying filter function df.filter(['Species', 'SepalLengthCm', 'SepalLengthCm']).head() 

Produksjon:

Bruker filter på datasett

Bruker filter på datasettet

Sortering av DataFrame

For å sortere datarammen i pandaer, funksjonen sort_verdier() benyttes. Pandas sort_values() kan sortere datarammen i stigende eller synkende rekkefølge.

Python Pandas sortering av dataramme i stigende rekkefølge

Produksjon:

Sortert datasett basert på en kolonneverdi

Sortert datasett basert på en kolonneverdi

Pandas GroupBy

Gruppe av er et ganske enkelt konsept. Vi kan lage en gruppering av kategorier og bruke en funksjon på kategoriene. I ekte datavitenskapelige prosjekter vil du håndtere store mengder data og prøve ting om og om igjen, så for effektiviteten bruker vi Groupby-konseptet. Groupby refererer hovedsakelig til en prosess som involverer ett eller flere av følgende trinn:

  • Splitting: Det er en prosess der vi deler data inn i grupper ved å bruke noen betingelser på datasett.
  • Søker: Det er en prosess der vi bruker en funksjon på hver gruppe uavhengig.
  • Kombinere: Det er en prosess der vi kombinerer ulike datasett etter å ha brukt groupby og resultater til en datastruktur.

Følgende bilde vil hjelpe deg med å forstå prosessen involverer i Groupby-konseptet.

1. Grupper de unike verdiene fra Team-kolonnen

Pandas Groupby-metoden

2. Nå er det en bøtte for hver gruppe

3. Kast de andre dataene i bøttene

Pandas GroupBy

4. Bruk en funksjon på vektkolonnen til hver bøtte.

Bruke funksjon på vektkolonnen i hver kolonne

Python Pandas GroupBy

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'Name': ['Jai', 'Anuj', 'Jai', 'Princi', 'Gaurav', 'Anuj', 'Princi', 'Abhi'], 'Age': [27, 24, 22, 32, 33, 36, 27, 32], 'Address': ['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj', 'Jaunpur', 'Kanpur', 'Allahabad', 'Aligarh'], 'Qualification': ['Msc', 'MA', 'MCA', 'Phd', 'B.Tech', 'B.com', 'Msc', 'MA']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) print('Original Dataframe') display(df) # applying groupby() function to # group the data on Name value. gk = df.groupby('Name') # Let's print the first entries # in all the groups formed. print('After Creating Groups') gk.first() 

Produksjon:

pandaer gruppeby

pandaer gruppeby

Bruker funksjon på gruppe:

Etter å ha delt en data i en gruppe, bruker vi en funksjon på hver gruppe for å gjøre at vi utfører noen operasjoner de er:

  • Aggregasjon: Det er en prosess der vi beregner en oppsummerende statistikk (eller statistikk) om hver gruppe. For eksempel, Beregn gruppesummer eller middel
  • Transformasjon: Det er en prosess der vi utfører noen gruppespesifikke beregninger og returnerer en like-indeksert. For eksempel fylle NA-er innenfor grupper med en verdi avledet fra hver gruppe
  • Filtrering: Det er en prosess der vi forkaster noen grupper, i henhold til en gruppevis beregning som evaluerer Sant eller Usant. For eksempel filtrering av data basert på gruppesum eller gjennomsnitt

Panda Aggregasjon

Aggregasjon er en prosess der vi beregner en oppsummerende statistikk om hver gruppe. Den aggregerte funksjonen returnerer én enkelt aggregert verdi for hver gruppe. Etter å ha delt data i grupper ved å bruke groupby-funksjonen, kan flere aggregeringsoperasjoner utføres på de grupperte dataene.

Python Pandas aggregasjon

Python3
# importing pandas module import pandas as pd # importing numpy as np import numpy as np # Define a dictionary containing employee data data1 = {'Name': ['Jai', 'Anuj', 'Jai', 'Princi', 'Gaurav', 'Anuj', 'Princi', 'Abhi'], 'Age': [27, 24, 22, 32, 33, 36, 27, 32], 'Address': ['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj', 'Jaunpur', 'Kanpur', 'Allahabad', 'Aligarh'], 'Qualification': ['Msc', 'MA', 'MCA', 'Phd', 'B.Tech', 'B.com', 'Msc', 'MA']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) # performing aggregation using # aggregate method grp1 = df.groupby('Name') grp1.aggregate(np.sum) 

Produksjon:

Bruk av sum aggregert funksjon på datasett

Bruk av sum aggregert funksjon på datasett

Sammenkoble DataFrame

For å samle datarammen bruker vi concat() funksjon som hjelper til med å sette sammen datarammen. Denne funksjonen utfører alt det tunge løftet med å utføre sammenkoblingsoperasjoner sammen med en akse av Pandas-objekter mens den utfører valgfri innstillingslogikk (forening eller skjæring) av indeksene (hvis noen) på de andre aksene.

Python Pandas Concatenate Dataframe

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Name':['Jai', 'Princi', 'Gaurav', 'Anuj'], 'Age':[27, 24, 22, 32],} # Define a dictionary containing employee data data2 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Address':['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj'], 'Qualification':['Btech', 'B.A', 'Bcom', 'B.hons']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) # Convert the dictionary into DataFrame df1 = pd.DataFrame(data2) display(df, df1) # combining series and dataframe res = pd.concat([df, df1], axis=1) res 

Produksjon:

Slår sammen DataFrame

Når vi trenger å kombinere veldig store DataFrames, fungerer sammenføyninger som en kraftig måte å utføre disse operasjonene raskt på. Sammenføyninger kan bare gjøres på to DataFrames om gangen, betegnet som venstre og høyre tabell. Nøkkelen er den vanlige kolonnen som de to DataFrames skal kobles sammen på. Det er en god praksis å bruke nøkler som har unike verdier i hele kolonnen for å unngå utilsiktet duplisering av radverdier. Pandaer gir en enkelt funksjon, slå sammen() , som inngangspunkt for alle standard databasesammenføyningsoperasjoner mellom DataFrame-objekter.

Det er fire grunnleggende måter å håndtere sammenføyningen på (indre, venstre, høyre og ytre), avhengig av hvilke rader som må beholde dataene sine.

Slå sammen Daframe Python Pandas

Python Pandas Merge Dataframe

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Name':['Jai', 'Princi', 'Gaurav', 'Anuj'], 'Age':[27, 24, 22, 32],} # Define a dictionary containing employee data data2 = {'key': ['K0', 'K1', 'K2', 'K3'], 'Address':['Nagpur', 'Kanpur', 'Allahabad', 'Kannuaj'], 'Qualification':['Btech', 'B.A', 'Bcom', 'B.hons']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1) # Convert the dictionary into DataFrame df1 = pd.DataFrame(data2) display(df, df1) # using .merge() function res = pd.merge(df, df1, on='key') res 

Produksjon:

Sammenslåing av to datasett

Sammenslåing av to datasett

Bli med i DataFrame

For å bli med i datarammen bruker vi .bli med() funksjon denne funksjonen brukes til å kombinere kolonnene til to potensielt forskjellig indekserte DataFrames til en enkelt resultat DataFrame.

Python Pandas Join Dataframe

Python3
# importing pandas module import pandas as pd # Define a dictionary containing employee data data1 = {'Name':['Jai', 'Princi', 'Gaurav', 'Anuj'], 'Age':[27, 24, 22, 32]} # Define a dictionary containing employee data data2 = {'Address':['Allahabad', 'Kannuaj', 'Allahabad', 'Kannuaj'], 'Qualification':['MCA', 'Phd', 'Bcom', 'B.hons']} # Convert the dictionary into DataFrame df = pd.DataFrame(data1,index=['K0', 'K1', 'K2', 'K3']) # Convert the dictionary into DataFrame df1 = pd.DataFrame(data2, index=['K0', 'K2', 'K3', 'K4']) display(df, df1) # joining dataframe res = df.join(df1) res 

Produksjon:

Sammenføyning av to datasett

For mer informasjon, se vår Pandaer slår sammen, sammenføyer og sammenføyer opplæringen

For en fullstendig guide om pandaer, se vår Panda-opplæring .

Visualisering med Matplotlib

Matplotlib er enkel å bruke og et fantastisk visualiseringsbibliotek i Python. Den er bygget på NumPy-matriser og designet for å fungere med den bredere SciPy-stakken og består av flere plott som linje, bar, spredning, histogram, etc.

Pyplot

Pyplot er en Matplotlib-modul som gir et MATLAB-lignende grensesnitt. Pyplot gir funksjoner som samhandler med figuren, dvs. lager en figur, dekorerer plottet med etiketter og lager et plotteområde i en figur.

Python3
# Python program to show pyplot module import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4], [1, 4, 9, 16]) plt.axis([0, 6, 0, 20]) plt.show() 

Produksjon:

Stolpediagram

EN bartomt eller stolpediagram er en graf som representerer kategorien data med rektangulære stolper med lengder og høyder som er proporsjonale med verdiene de representerer. Barplottene kan plottes horisontalt eller vertikalt. Et søylediagram beskriver sammenligningene mellom de diskrete kategoriene. Den kan opprettes ved å bruke bar()-metoden.

Python Matplotlib stolpediagram

Her vil vi kun bruke iris-datasettet

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') # This will plot a simple bar chart plt.bar(df['Species'], df['SepalLengthCm']) # Title to the plot plt.title('Iris Dataset') # Adding the legends plt.legend(['bar']) plt.show() 

Produksjon:

Stolpediagram med matplotlib-bibliotek

Stolpediagram med matplotlib-bibliotek

Histogrammer

EN histogram brukes i utgangspunktet til å representere data i form av noen grupper. Det er en type søyleplott hvor X-aksen representerer bingeområdene mens Y-aksen gir informasjon om frekvens. For å lage et histogram er det første trinnet å lage en beholder med områdene, deretter fordele hele området av verdiene i en serie med intervaller, og telle verdiene som faller inn i hvert av intervallene. Binger er tydelig identifisert som påfølgende, ikke-overlappende intervaller av variabler. De hist() funksjonen brukes til å beregne og lage et histogram av x.

Python Matplotlib Histogram

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.hist(df['SepalLengthCm']) # Title to the plot plt.title('Histogram') # Adding the legends plt.legend(['SepalLengthCm']) plt.show() 

Produksjon:

Histplot ved hjelp av matplotlib-bibliotek

Spredningsplott

Spredningsplott brukes til å observere forhold mellom variabler og bruker prikker for å representere forholdet mellom dem. De spre() metoden i matplotlib-biblioteket brukes til å tegne et spredningsplott.

Python Matplotlib Scatter Plot

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.scatter(df['Species'], df['SepalLengthCm']) # Title to the plot plt.title('Scatter Plot') # Adding the legends plt.legend(['SepalLengthCm']) plt.show() 

Produksjon:

Spredningsplott ved hjelp av matplotlib-biblioteket

Spredningsplott ved hjelp av matplotlib-biblioteket

Box Plot

EN boksplott ,Korrelasjon også kjent som et boks- og værhårsplot. Det er en veldig god visuell representasjon når det gjelder å måle datafordelingen. Plott tydelig medianverdiene, uteliggere og kvartilene. Å forstå datadistribusjon er en annen viktig faktor som fører til bedre modellbygging. Hvis data har uteliggere, er boksplott en anbefalt måte å identifisere dem og iverksette nødvendige handlinger. Boks- og værhårsdiagrammet viser hvordan data er spredt. Fem opplysninger er vanligvis inkludert i diagrammet

  • Minimum vises helt til venstre i diagrammet, på slutten av venstre 'whisker'
  • Første kvartil, Q1, er lengst til venstre i boksen (venstre værhår)
  • Medianen vises som en linje i midten av boksen
  • Tredje kvartil, Q3, vist helt til høyre i boksen (høyre værhår)
  • Maksimum er helt til høyre i boksen

Representasjon av kassetomt

Interkvartilområde

Interkvartilområde

Illustrerende boksplott

Illustrerende boksplott

Python Matplotlib Box Plot

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.boxplot(df['SepalWidthCm']) # Title to the plot plt.title('Box Plot') # Adding the legends plt.legend(['SepalWidthCm']) plt.show() 

Produksjon:

Boxplot ved hjelp av matplotlib-biblioteket

Boxplot ved hjelp av matplotlib-biblioteket

Korrelasjon varmekart

Et 2-D Heatmap er et datavisualiseringsverktøy som hjelper til med å representere fenomenets størrelse i form av farger. Et korrelasjonsvarmekart er et varmekart som viser en 2D-korrelasjonsmatrise mellom to diskrete dimensjoner, ved å bruke fargede celler for å representere data fra vanligvis en monokromatisk skala. Verdiene til den første dimensjonen vises som radene i tabellen, mens den andre dimensjonen er en kolonne. Fargen på cellen er proporsjonal med antall målinger som samsvarer med dimensjonsverdien. Dette gjør korrelasjonsvarmekart ideelle for dataanalyse siden det gjør mønstre lett lesbare og fremhever forskjellene og variasjonen i de samme dataene. Et korrelasjonsvarmekart, som et vanlig varmekart, assisteres av en fargelinje som gjør data lett lesbare og forståelige.

Merk: Dataene her må sendes med corr()-metoden for å generere et korrelasjonsvarmekart. Corr() eliminerer også kolonner som ikke vil være til nytte mens de genererer et korrelasjonsvarmekart og velger de som kan brukes.

Python Matplotlib Correlation Heatmap

Python3
import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv('Iris.csv') plt.imshow(df.corr() , cmap = 'autumn' , interpolation = 'nearest' ) plt.title('Heat Map') plt.show() 

Produksjon:

Varmekart ved hjelp av matplotlib-biblioteket

Varmekart ved hjelp av matplotlib-biblioteket

For mer informasjon om datavisualisering, se veiledningene nedenfor –

Topp Artikler

Kategori

Interessante Artikler