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 installerenBoxplots 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,Saldo1, 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 genererenimporteer 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 genererenimporteer 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.