Dataanalys med Python

I den här artikeln kommer vi att diskutera hur man gör dataanalys med Python. Vi kommer att diskutera alla typer av dataanalyser, dvs. analysera numerisk data med NumPy, tabelldata med Pandas, datavisualisering Matplotlib och Exploratory dataanalys.

Dataanalys med Python

Dataanalys är tekniken för att samla in, omvandla och organisera data för att göra framtida förutsägelser och informerade datadrivna beslut. Det hjälper också att hitta möjliga lösningar på ett affärsproblem. Det finns sex steg för dataanalys. Dom är:

  • Fråga eller specificera datakrav
  • Förbered eller samla in data
  • Rengör och bearbeta
  • Analysera
  • Dela med sig
  • Agera eller anmäla

Dataanalys med Python



Notera: För att veta mer om dessa steg, se vår NumPy är ett arraybearbetningspaket i Python och tillhandahåller ett högpresterande flerdimensionellt arrayobjekt och verktyg för att arbeta med dessa arrayer. Det är det grundläggande paketet för vetenskaplig beräkning med Python.

Arrayer i NumPy

NumPy Array är en tabell med element (vanligtvis siffror), alla av samma typ, indexerade med en tupel av positiva heltal. I Numpy kallas antalet dimensioner för arrayen rangen för arrayen. En tuppel av heltal som anger storleken på arrayen längs varje dimension kallas formen på arrayen.

Skapar NumPy Array

NumPy-matriser kan skapas på flera sätt, med olika rangordningar. Den kan också skapas med hjälp av olika datatyper som listor, tupler, etc. Typen av den resulterande arrayen härleds från typen av element i sekvenserna. NumPy erbjuder flera funktioner för att skapa arrayer med initialt platshållarinnehåll. Dessa minimerar behovet av växande arrayer, en dyr operation.

Skapa Array med hjälp 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) 

Produktion:

Tom Matrix med pandor

Tom Matrix med pandor

Skapa Array med hjälp av numpy.zeros(shape, dtype = Ingen, order = '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) 

Produktion:

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

Operationer på Numpy Arrays

Aritmetiska operationer

  • Tillägg:
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) 

Produktion:

[ 7 77 23 130] [ 7 77 23 130] [ 8 79 26 134] [ 7 77 23 130] 
  • Subtraktion:
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) 

Produktion:

[ 3 67 3 70] [ 3 67 3 70] 
  • Multiplikation:
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) 

Produktion:

[ 10 360 130 3000] [ 10 360 130 3000] 
  • Division:
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) 

Produktion:

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

För mer information, se vår NumPy – Handledning för aritmetiska operationer

NumPy Array Indexing

Indexering kan göras i NumPy genom att använda en array som ett index. När det gäller segmentet returneras en vy eller ytlig kopia av arrayen men i index arrayen returneras en kopia av den ursprungliga arrayen. Numpy-arrayer kan indexeras med andra arrayer eller någon annan sekvens med undantag för tupler. Det sista elementet indexeras med -1 näst sist med -2 ​​och så vidare.

Python NumPy Array Indexing

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) 

Produktion:

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

NumPy Array Slicing

Betrakta syntaxen x[obj] där x är matrisen och obj är indexet. Sliceobjektet är indexet i fallet med grundläggande skivning . Grundläggande skärning sker när obj är:

  • ett skivobjekt som är av formen start: stop: step
  • ett heltal
  • eller en tupel av skivobjekt och heltal

Alla arrayer som genereras av grundläggande slicing är alltid vyn i den ursprungliga 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:]) 

Produktion:

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 också användas tillsammans med grundläggande skivning. Ellipsis (...) är antalet : objekt som behövs för att göra en urvalstupel av samma längd som dimensionerna för arrayen.

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 ] 

Produktion:

[[ 2 5]  [ 8 11]] 

NumPy Array Broadcasting

Termen sändning hänvisar till hur numpy behandlar arrayer med olika dimensioner under aritmetiska operationer som leder till vissa begränsningar, den mindre arrayen sänds över den större arrayen så att de har kompatibla former.

Låt oss anta att vi har en stor datamängd, varje datum är en lista med parametrar. I Numpy har vi en 2D-array, där varje rad är ett datum och antalet rader är storleken på datamängden. Anta att vi vill tillämpa någon form av skalning på alla dessa data varje parameter får sin egen skalningsfaktor eller säg att varje parameter multipliceras med någon faktor.

Bara för att ha en klar förståelse, låt oss räkna kalorier i livsmedel med hjälp av en nedbrytning av makronäringsämnen. Grovt uttryckt är de kaloririka delarna av maten gjorda av fetter (9 kalorier per gram), protein (4 CPG) och kolhydrater (4 CPG). Så om vi listar några livsmedel (våra data), och för varje livsmedelslista dess makronäringsfördelning (parametrar), kan vi sedan multiplicera varje näringsämne med dess kalorivärde (tillämpa skalning) för att beräkna kalorifördelningen för varje livsmedel.

NumPy Array Broadcasting

Med denna transformation kan vi nu beräkna all slags användbar information. Till exempel, vad är det totala antalet kalorier som finns i någon mat eller, givet en uppdelning av min middag, vet hur många kalorier jag fick från protein och så vidare.

Låt oss se ett naivt sätt att producera den här beräkningen 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 

Produktion:

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

Sändningsregler: Att sända två arrayer tillsammans följer dessa regler:

  • Om arrayerna inte har samma rangordning, lägg sedan formen på den lägre rangordningen med 1:or tills båda formerna har samma längd.
  • De två arrayerna är kompatibla i en dimension om de har samma storlek i dimensionen eller om en av arrayerna har storlek 1 i den dimensionen.
  • Matriserna kan sändas tillsammans om de är kompatibla med alla dimensioner.
  • Efter sändning beter sig varje array som om den hade en form som är lika med elementmässigt maximum av former för de två inmatningsmatriserna.
  • I alla dimensioner där en matris hade en storlek på 1 och den andra matrisen hade en storlek större än 1, beter sig den första matrisen som om den kopierades längs den dimensionen.
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) 

Produktion:

[[ 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]] 

Notera: För mer information, se vår Python NumPy Tutorial .

Analysera data med hjälp av pandor

Python Pandas Används för relationell eller märkt data och tillhandahåller olika datastrukturer för att manipulera sådana data och tidsserier. Detta bibliotek är byggt ovanpå NumPy-biblioteket. Denna modul importeras vanligtvis som:

import pandas as pd 

Här hänvisas pd till som ett alias till pandorna. Det är dock inte nödvändigt att importera biblioteket med hjälp av aliaset, det hjälper bara att skriva mindre mängd kod varje gång en metod eller egenskap anropas. Pandas tillhandahåller i allmänhet två datastrukturer för att manipulera data, de är:

  • Serier
  • Dataram

Serier:

Panda-serien är en endimensionell märkt array som kan innehålla data av vilken typ som helst (heltal, sträng, float, pythonobjekt, etc.). Axeletiketterna kallas gemensamt för index. Pandas Series är inget annat än en kolumn i ett excelark. Etiketter behöver inte vara unika utan måste vara en hashbar typ. Objektet stöder både heltals- och etikettbaserad indexering och tillhandahåller en mängd metoder för att utföra operationer som involverar indexet.

Panda-serien

Den kan skapas med funktionen Series() genom att ladda datamängden från den befintliga lagringen som SQL, Database, CSV-filer, Excel-filer, etc., eller från datastrukturer som listor, ordböcker etc.

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) 

Produktion:

pnadas-serien

pnadas-serien

Dataram:

Pandas DataFrame är en tvådimensionell storleksföränderlig, potentiellt heterogen tabelldatastruktur med märkta axlar (rader och kolumner). En dataram är en tvådimensionell datastruktur, d.v.s. data är inriktade i tabellform i rader och kolumner. Pandas DataFrame består av tre huvudkomponenter, data, rader och kolumner.

Pandas dataram

Den kan skapas med metoden Dataframe() och precis som en serie kan den också vara från olika filtyper och datastrukturer.

Python Pandas skapar dataram

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 

Produktion:

Skapar dataram från listan

Skapar dataram från pythonlistan

Skapar dataram från CSV

Vi kan skapa en dataram från CSV:en filer med hjälp av read_csv() fungera.

Python Pandas läser CSV

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

Produktion:

chef för en dataram

chef för en dataram

Filtrera DataFrame

Pandas dataframe.filter() funktionen används för att underställa rader eller kolumner i dataramen enligt etiketter i det angivna indexet. Observera att denna rutin inte filtrerar en dataram på dess innehåll. Filtret tillämpas på indexets etiketter.

Python Pandas filterdataram

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

Produktion:

Använder filter på dataset

Använder filter på dataset

Sortering av DataFrame

För att sortera dataramen i pandor, funktionen sort_values() är använd. Pandas sort_values() kan sortera dataramen i stigande eller fallande ordning.

Python Pandas sorterar dataram i stigande ordning

Produktion:

Sorterad datauppsättning baserat på ett kolumnvärde

Sorterad datauppsättning baserat på ett kolumnvärde

Pandas GroupBy

Grupp av är ett ganska enkelt koncept. Vi kan skapa en gruppering av kategorier och tillämpa en funktion på kategorierna. I riktiga datavetenskapliga projekt kommer du att hantera stora mängder data och prova saker om och om igen, så för effektiviteten använder vi Groupby-konceptet. Groupby hänvisar huvudsakligen till en process som involverar ett eller flera av följande steg:

  • Uppdelning: Det är en process där vi delar upp data i grupper genom att tillämpa vissa villkor på datamängder.
  • Ansöker: Det är en process där vi tillämpar en funktion för varje grupp oberoende.
  • Kombinerande: Det är en process där vi kombinerar olika datamängder efter att ha tillämpat groupby och resultat till en datastruktur.

Följande bild hjälper dig att förstå processen som ingår i Groupby-konceptet.

1. Gruppera de unika värdena från kolumnen Team

Pandas Groupby Method

2. Nu finns det en hink för varje grupp

3. Kasta andra data i hinkarna

Pandas GroupBy

4. Använd en funktion på viktkolumnen för varje hink.

Tillämpa funktion på viktkolumnen i varje kolumn

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() 

Produktion:

pandas gruppby

pandas gruppby

Använder funktionen på gruppen:

Efter att ha delat upp en data i en grupp, tillämpar vi en funktion på varje grupp för att göra att vi utför några operationer de är:

  • Aggregation: Det är en process där vi beräknar en sammanfattande statistik (eller statistik) om varje grupp. Till exempel, Beräkna gruppsummor eller medelvärden
  • Omvandling: Det är en process där vi utför några gruppspecifika beräkningar och returnerar en lika-indexerad. Till exempel, fylla NA inom grupper med ett värde som härrör från varje grupp
  • Filtrering: Det är en process där vi förkastar vissa grupper, enligt en gruppvis beräkning som utvärderar Sant eller Falskt. Till exempel filtrering av data baserat på gruppsumma eller medelvärde

Panda Aggregation

Aggregation är en process där vi beräknar en sammanfattande statistik om varje grupp. Den aggregerade funktionen returnerar ett enda aggregerat värde för varje grupp. Efter att ha delat upp data i grupper med hjälp av groupby-funktionen kan flera aggregeringsoperationer utföras på den grupperade datan.

Python Pandas Aggregation

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) 

Produktion:

Användning av summaaggregatfunktion på dataset

Användning av summaaggregatfunktion på dataset

Sammanfoga DataFrame

För att sammanfoga dataramen använder vi concat() funktion som hjälper till att sammanfoga dataramen. Den här funktionen gör allt det tunga arbetet med att utföra sammanlänkningsoperationer tillsammans med en axel av Pandas-objekt samtidigt som den utför valfri inställningslogik (förening eller skärning) av indexen (om några) på de andra axlarna.

Python Pandas sammanfoga dataram

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 

Produktion:

Sammanfogar DataFrame

När vi behöver kombinera mycket stora DataFrames, fungerar joins som ett kraftfullt sätt att utföra dessa operationer snabbt. Joins kan endast göras på två DataFrames åt gången, betecknade som vänster och höger tabeller. Nyckeln är den gemensamma kolumnen som de två DataFrames kommer att sammanfogas på. Det är en bra praxis att använda nycklar som har unika värden i hela kolumnen för att undvika oavsiktlig dubblering av radvärden. Pandas ger en enda funktion, sammanfoga() , som startpunkt för alla standarddatabaskopplingsoperationer mellan DataFrame-objekt.

Det finns fyra grundläggande sätt att hantera kopplingen (inre, vänster, höger och yttre), beroende på vilka rader som måste behålla sina data.

Slå samman 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 

Produktion:

Sammanfoga två datamängder

Sammankoppling av två datamängder

Går med i DataFrame

För att gå med i dataramen använder vi .Ansluta sig() funktion den här funktionen används för att kombinera kolumnerna i två potentiellt olika indexerade DataFrames till en enda resultat DataFrame.

Python Pandas går med i 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 

Produktion:

Sammanfogar två datamängder

För mer information, se vår Panda slår samman, sammanfogar och sammanfogar handledning

För en komplett guide om pandor, se vår Handledning för pandor .

Visualisering med Matplotlib

Matplotlib är lätt att använda och ett fantastiskt visualiseringsbibliotek i Python. Den är byggd på NumPy-arrayer och designad för att fungera med den bredare SciPy-stacken och består av flera plotter som linje, stapel, scatter, histogram, etc.

Pyplot

Pyplot är en Matplotlib-modul som ger ett MATLAB-liknande gränssnitt. Pyplot tillhandahåller funktioner som interagerar med figuren, dvs skapar en figur, dekorerar tomten med etiketter och skapar ett plottande områ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() 

Produktion:

Stapeldiagram

A bartomt eller stapeldiagram är ett diagram som representerar kategorin av data med rektangulära staplar med längder och höjder som är proportionella mot de värden som de representerar. Staplarna kan plottas horisontellt eller vertikalt. Ett stapeldiagram beskriver jämförelserna mellan de diskreta kategorierna. Det kan skapas med metoden bar().

Python Matplotlib stapeldiagram

Här kommer vi endast att använda irisdataset

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() 

Produktion:

Stapeldiagram med matplotlib-bibliotek

Stapeldiagram med matplotlib-bibliotek

Histogram

A histogram används i grunden för att representera data i form av vissa grupper. Det är en typ av stapeldiagram där X-axeln representerar bin-intervallen medan Y-axeln ger information om frekvens. För att skapa ett histogram är det första steget att skapa en bin med intervallen, sedan fördela hela intervallet av värdena i en serie intervall och räkna värdena som faller inom vart och ett av intervallen. Bins är tydligt identifierade som på varandra följande, icke-överlappande intervall av variabler. De hist() funktionen används för att beräkna och skapa ett 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() 

Produktion:

Histplot med matplotlib-bibliotek

Scatter Plot

Spridningsdiagram används för att observera förhållandet mellan variabler och använder punkter för att representera förhållandet mellan dem. De sprida ut() metod i matplotlib-biblioteket används för att rita ett spridningsdiagram.

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() 

Produktion:

Scatterplot med matplotlib-bibliotek

Scatterplot med matplotlib-bibliotek

Box Plot

A boxplot ,Korrelation även känd som en ruta och morrhårsplott. Det är en mycket bra visuell representation när det gäller att mäta datafördelningen. Plotta tydligt medianvärdena, extremvärdena och kvartilerna. Att förstå datadistribution är en annan viktig faktor som leder till bättre modellbygge. Om data har extremvärden är boxplot ett rekommenderat sätt att identifiera dem och vidta nödvändiga åtgärder. Rutan och morrhårsdiagrammet visar hur data sprids ut. Fem uppgifter ingår i allmänhet i diagrammet

  • Minimum visas längst till vänster i diagrammet, i slutet av vänster 'morrhår'
  • Första kvartilen, Q1, är längst till vänster i rutan (vänster morrhår)
  • Medianen visas som en linje i mitten av rutan
  • Tredje kvartilen, Q3, visas längst till höger i rutan (höger morrhår)
  • Maximum är längst till höger i rutan

Representation av boxplot

Kvartilavståndet

Kvartilavståndet

Illustrerande boxplott

Illustrerande boxplott

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() 

Produktion:

Boxplot med matplotlib-bibliotek

Boxplot med matplotlib-bibliotek

Korrelationsvärmekartor

En 2-D Heatmap är ett datavisualiseringsverktyg som hjälper till att representera fenomenets storlek i form av färger. En korrelationsvärmekarta är en värmekarta som visar en 2D-korrelationsmatris mellan två diskreta dimensioner, med hjälp av färgade celler för att representera data från vanligtvis en monokromatisk skala. Värdena för den första dimensionen visas som rader i tabellen medan den andra dimensionen är en kolumn. Cellens färg är proportionell mot antalet mätningar som matchar det dimensionella värdet. Detta gör korrelationsvärmekartor idealiska för dataanalys eftersom det gör mönster lättlästa och framhäver skillnaderna och variationen i samma data. En korrelationsvärmekarta, som en vanlig värmekarta, assisteras av ett färgfält som gör data lätt läsbara och begripliga.

Notera: Data här måste skickas med metoden corr() för att generera en korrelationsvärmekarta. Dessutom eliminerar corr() självt kolumner som inte kommer att vara till någon nytta när en korrelationsvärmekarta genereras och väljer de som kan användas.

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() 

Produktion:

Värmekarta med matplotlib-bibliotek

Värmekarta med matplotlib-bibliotek

För mer information om datavisualisering, se våra tutorials nedan -

Top Artiklar

Kategori

Intressanta Artiklar