panda's

Boxplot gebruiken in Python

Boxplot gebruiken in Python
Een boxplot wordt gebruikt om gegevenssets samen te vatten met behulp van de box-and-whiskerplotmethode. Deze functie helpt gebruikers de gegevenssamenvatting goed te begrijpen. Boxplots kunnen erg handig zijn als we willen weten hoe de gegevens worden gedistribueerd en verspreid. In de boxplot worden drie soorten kwartielen gebruikt om de gegevens te plotten. Deze waarden omvatten de mediaan, maximum, minimum, bovenste kwartiel en onderste kwartiel statistische waarden. Een boxplot vat deze gegevens samen in de 25dit, 50dit, en 75dit percentielen. Deze zelfstudie laat u zien hoe u boxplots kunt maken op basis van een bepaalde gegevensset met behulp van de panda's en zeegeborene bibliotheken van Python.

Voorwaarde

Als u een nieuwe Python-gebruiker bent, moet u eerst de omgeving instellen om de uitvoer van de boxplot te tonen. U kunt elke Python-interpreter gebruiken om de code uit te voeren. In deze tutorial gebruik ik spyder3 om de code uit te voeren. Als u de panda's en zeegeborene bibliotheken eerder, dan moet u de volgende opdracht vanaf de terminal uitvoeren om deze bibliotheken te installeren:

$ pip3 panda's Seaborn installeren

Boxplots met panda's

De boxplot() methode van panda's wordt gebruikt om boxplotcijfers te genereren op basis van het dataframe. Deze methode bevat veel argumenten; sommige van deze argumenten worden gebruikt in de onderstaande voorbeelden. Dit deel van de zelfstudie bevat twee voorbeelden die u laten zien hoe u boxplots kunt maken in panda's. U kunt willekeurig gegenereerde gegevens in de NumPy-bibliotheek of de gegevens uit een CSV-bestand gebruiken om een ​​boxplot te genereren in panda's.

Voorbeeld 1: Boxplots op basis van willekeurige waarden

De boxplots in het volgende voorbeeld zijn gegenereerd met NumPy en panda's. De NumPy-bibliotheek wordt in het script gebruikt om een ​​dataframe-object te maken door een tweedimensionale reeks willekeurige waarden te genereren die 5 rijen en 5 kolommen bevatten. De inhoud van het dataframe wordt afgedrukt met het hoofd() methode. Volgende, de boxplot() methode wordt gebruikt om boxplots te genereren met blauwe kleur, lettergrootte 10 en een rotatiehoek van 30 graden voor het weergeven van de kolomwaarden.

#!/usr/bin/env python3
# Panda's-bibliotheek importeren
panda's importeren als pd
# Importeer de NumPy-bibliotheek om de willekeurige getallen voor de array te maken
importeer numpy als np
"
Genereer dataset op basis van willekeurig gemaakte NumPy-array
en vijf kolommen waarden
"
dataframe = pd.DataFrame(np.willekeurig.randn(5,5), kolommen=['2016', '2017', '2018',
'2019', '2020'])
 
# Druk de waarden van het dataframe af
print(dataframe).hoofd())
# Geef de boxplot weer op basis van de dataframe-waarden
dataframe.boxplot(grid='false', color='blue',fontsize=10, rot=30 )

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van de code:.

Voorbeeld 2: Boxplots op basis van CSV-gegevens

De boxplots in het volgende voorbeeld zijn gegenereerd op basis van CSV-gegevens. Maak een CSV-bestand met de naam bank.csv met behulp van de volgende gegevens:.

bank.csv

SL,Client_Name,Account_Type,Gender,Saldo
1, Maria Hernandez, Besparing, Vrouw, 120000
2, Mary Smith, Huidig, Vrouwelijk, 40000
3, David Smith, Huidig, Man, 379000
4, Maria Rodriguez, Sparen, Vrouw, 56000
5, Mark Lee, Sparen, Man, 93500
6, Jonathan Bing, Huidig, Man, 5900
7, Daniel Williams, Sparen, Man, 2300
8,Mike Brown,Current,Man,124888
9, Paul Smith, Huidig, Man, 59450
10, Maria Lopez, Sparen, Vrouw, 487600

In het volgende script, de matplotlib bibliotheek werd gebruikt om de figuurgrootte van de boxplot in te stellen en om de uitvoer inline weer te geven. Alle records van de bank.csv bestand zijn geladen met de lees_csv() methode van panda's. De eerste 8 records van het dataframe werden vervolgens afgedrukt met de hoofd() methode. De boxplot() methode werd gebruikt in de volgende verklaring om de boxplot-figuur te tekenen met rode kleur op basis van 'Account type' met de kolom met de naam 'Balans.'

#!/usr/bin/env python3
# Importeer panda's voor het genereren van boxplots
panda's importeren als pd
# Importeer matplotlib om de figuurgrootte van de boxplot in te stellen
matplotlib importeren.pyplot als plt
# Importeer get_ipython om de uitvoer inline te formatteren
van IPython import get_ipython
get_ipython().run_line_magic('matplotlib', 'inline')
# Stel de figuurgrootte in
plt.rcParams['figuur.figgrootte'] = (8,4)
# Laad de dataset uit een CSV-bestand
df = pd.read_csv("bank.csv")
# Druk de eerste 8 rijen van de geladen gegevens af
print(df.hoofd(8))
# Geef de boxplots weer op basis van de gebruikte parameter
df.boxplot(by ='Account_Type',grid='True',column =['Balans'], kleur='rood')

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van de code:.

Boxplots met zeegeboren

Een andere bibliotheek van Python die vaak wordt gebruikt om boxplots te tekenen, is de bibliotheek zeegeborene.  Een van de belangrijke kenmerken van deze bibliotheek is dat deze veel ingebouwde voorbeeldgegevenssets heeft om verschillende taken te testen. De volgende twee voorbeelden behandelen het gebruik van twee verschillende voorbeeldgegevenssets om boxplots te tekenen met behulp van de zeegeborene bibliotheek.

Voorbeeld 3: Boxplots op basis van parameter x

In het volgende voorbeeld wordt een voorbeeldgegevensset gebruikt met de naam 'diamanten,' van de zeegeborene bibliotheek om de boxplot te genereren. Hier wordt de rasterstijl gedefinieerd met de set_style() methode. De load_dataset() methode wordt gebruikt om de gegevens van de 'diamanten' gegevensset. De eerste vijf records worden afgedrukt vanuit de dataset en de boxplot() methode wordt vervolgens gebruikt om de boxplot te tekenen op basis van de kolom, genaamd 'diepte,' met blauwe kleur.

# Importeer zeegeboren bibliotheek om boxplot te genereren
importeer zeegeboren als sns
# Importeer matplotlib om de figuurgrootte van de boxplot in te stellen
matplotlib importeren.pyplot als plt
# Importeer get_ipython om de uitvoer inline te formatteren
van IPython import get_ipython
get_ipython().run_line_magic('matplotlib', 'inline')
# Stel de rasterstijl in
sns.set_style("whitegrid")
# Stel de figuurgrootte in
plt.rcParams['figuur.figgrootte'] = (8,4)
# Laad de voorbeelddataset
diamond_dataset = sns.load_dataset('diamanten')
# Toon de eerste 5 records van de dataset
print(diamond_dataset).hoofd())
# Teken de boxplots
sns.boxplot(x=diamond_dataset['depth'], color='blue')

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van de code:.

Voorbeeld 4: Boxplots op basis van x- en y-parameters

In het volgende voorbeeld wordt de voorbeeldgegevensset met de naam 'vluchten' om de boxplot te tekenen. Hier zijn zowel de x- als de y-parameters van de boxplot() methode worden gebruikt om de figuur te tekenen. De andere uitspraken zijn vergelijkbaar met het vorige voorbeeld.

# Importeer zeegeboren bibliotheek om boxplot te genereren
importeer zeegeboren als sns
# Importeer matplotlib om de figuurgrootte van de boxplot in te stellen
matplotlib importeren.pyplot als plt
# Importeer get_ipython om de uitvoer inline te formatteren
van IPython import get_ipython
get_ipython().run_line_magic('matplotlib', 'inline')
 
# Stel de rasterstijl in
sns.set_style("donkergrijs")
# Stel de figuurgrootte in
plt.rcParams['figuur.figgrootte'] = (12,4)
 
# Laad de voorbeelddataset
flight_dataset = sns.load_dataset('vluchten')
# Toon de eerste 5 records van de dataset
print(flight_dataset.hoofd())
 
# Teken de boxplots
sns.boxplot(x='maand', y='passagiers', data=flight_dataset, kleur='blauw')

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van de code:.

Conclusie

Als u met een grote hoeveelheid gegevens werkt, wilt u de gegevens wellicht samenvatten met behulp van een diagram, zoals een boxplot. In deze zelfstudie zijn verschillende voorbeelden gebruikt om u te laten zien hoe u boxplots kunt genereren met twee Python-bibliotheken.

Top 10 spellen om te spelen op Ubuntu
Het Windows-platform is een van de dominante platforms voor gaming geweest vanwege het enorme percentage games dat tegenwoordig wordt ontwikkeld om Wi...
5 beste arcade-spellen voor Linux
Tegenwoordig zijn computers serieuze machines die worden gebruikt om te gamen. Als je de nieuwe hoge score niet kunt halen, weet je wat ik bedoel. In ...
Strijd om Wesnoth 1.13.6 Ontwikkeling vrijgegeven
Strijd om Wesnoth 1.13.6 die vorige maand werd uitgebracht, is de zesde ontwikkelingsrelease in de 1.13.x-serie en het levert een aantal verbeteringen...