Hvordan bruke Boxplot i Python

Hvordan bruke Boxplot i Python
En boksplott brukes til å oppsummere datasett ved å bruke boksen og whisker plot -metoden. Denne funksjonen hjelper brukere med å forstå datasammendraget riktig. Boksplott kan være veldig nyttige når vi vil vite hvordan dataene blir distribuert og spredt. Tre typer kvartiler brukes i boksen for å plotte dataene. Disse verdiene inkluderer median, maksimum, minimum, øvre kvartil og lavere kvartil statistiske verdier. En boksplott oppsummerer disse dataene i 25th, 50th, og 75th Prosentiler. Denne opplæringen vil vise deg hvordan du oppretter boksplott basert på et gitt datasett ved hjelp av Pandas og Seaborn Biblioteker av Python.

Forutsetning

Hvis du er en ny Python -bruker, må du først sette opp miljøet for å vise utdataene fra boksen. Du kan bruke hvilken som helst Python -tolk for å utføre koden. I denne opplæringen vil jeg bruke Spyder3 For å utføre koden. Hvis du ikke har installert Pandas og Seaborn Biblioteker før, så bør du kjøre følgende kommando fra terminalen for å installere disse bibliotekene:

$ pip3 installer Pandas Seaborn

Boksplott med pandaer

De Boxplot () Metode av Pandas brukes til å generere boksplottfigurer basert på datarammen. Denne metoden inneholder mange argumenter; Noen av disse argumentene brukes i eksemplene nedenfor. Denne delen av opplæringen vil inneholde to eksempler som vil vise deg hvordan du lager boksplott i Pandas. Du kan bruke tilfeldig genererte data i Numpy -biblioteket, eller dataene fra en CSV -fil, for å generere en boksplott i Pandas.

Eksempel 1: Boksplott basert på tilfeldige verdier

Boksplottene i følgende eksempel ble generert ved bruk av Numpy og Pandas. Numpy-biblioteket brukes i skriptet for å lage et datarammeobjekt ved å generere en todimensjonal rekke tilfeldige verdier som inneholder 5 rader og 5 kolonner. Innholdet i datarammen vil bli skrevet ut ved hjelp av hodet() metode. Neste, The Boxplot () Metoden brukes til å generere boksplott med blå farge, fontstørrelse 10 og en 30-graders roterende vinkel for å vise kolonneverdiene.

#!/usr/bin/env python3
# Importer Pandas Library
Importer pandaer som PD
# Importer numpy bibliotek for å opprette tilfeldige tall for matrisen
Importer numpy som NP
""
Generere datasett basert på tilfeldig opprettet numpy matrise
og fem kolonnerverdier
""
DataFrame = PD.DataFrame (NP.tilfeldig.Randn (5,5), kolonner = ['2016', '2017', '2018',
'2019', '2020'])
# Skriv ut verdiene til DataFrame
Print (DataFrame.hode())
# Vis boksen Plott basert på DataFrame -verdiene
Dataramme.BoxPlot (Grid = 'False', Color = 'Blue', FontSize = 10, Rot = 30)

Produksjon

Følgende utgang vises etter å ha utført koden.

Eksempel 2: Boksplott basert på CSV -data

Boksplottene i følgende eksempel ble generert fra CSV -data. Opprett en CSV -fil som heter bank.CSV Bruke følgende data.

bank.CSV

SL, klientnavn, konto_type, kjønn, balanse
1, Maria Hernandez, Saving, Kvinne, 120000
2, Mary Smith, nåværende, kvinne, 40000
3, David Smith, nåværende, mann, 379000
4, Maria Rodriguez, Saving, Kvinne, 56000
5, Mark Lee, Saving, Mann, 93500
6, Jonathan Bing, strøm, mann, 5900
7, Daniel Williams, Saving, Male, 2300
8, Mike Brown, strøm, mann, 124888
9, Paul Smith, nåværende, mann, 59450
10, Maria Lopez, Saving, Kvinne, 487600

I det følgende skriptet, Matplotlib Bibliotek ble brukt til å sette opp figurstørrelsen på boksen og for å vise utgangsinline. Alle poster over banken.CSV filen ble lastet inn ved hjelp av read_csv () Metode av Pandas. De første 8 postene av datarammen ble deretter skrevet ut ved hjelp av hode() metode. De Boxplot () Metoden ble brukt i følgende uttalelse for å tegne boksen Plot -figuren ved hjelp av rød farge basert på 'Kontotype' med kolonnen som heter 'Balansere.'

#!/usr/bin/env python3
# Importer pandaer for å generere boksen
Importer pandaer som PD
# Importer matplotlib for å konfigurere figurstørrelsen på boksen
Importer matplotlib.Pyplot som Plt
# Import get_ipython for format ut -inline
fra ipython import get_ipython
get_ipython ().run_line_magic ('matplotlib', 'inline')
# Sett opp figurstørrelsen
plt.rcparams ['figur.FigSize '] = (8,4)
# Last inn datasettet fra en CSV -fil
df = pd.read_csv ("bank.CSV ")
# Skriv ut de første 8 radene med lastede data
trykk (df.hode (8))
# Vis boksen Plots basert på brukt parameter som brukes
df.BoxPlot (av = 'Account_Type', Grid = 'True', Column = ['Balance'], Color = 'Red')

Produksjon

Følgende utgang vises etter å ha utført koden.

Boksplott med sjøborn

Et annet bibliotek med Python som ofte brukes til å tegne bokser er biblioteket Seaborn. En av de viktige funksjonene ved dette biblioteket er at det har mange innebygde prøvedatasett for å teste forskjellige oppgaver. De to neste eksemplene vil dekke bruken av to forskjellige prøvedatasett for å tegne boksplott ved hjelp av Seaborn bibliotek.

Eksempel 3: Boksplott basert på X -parameter

Følgende eksempel bruker et eksempeldatasett, kalt 'diamanter, ' fra Seaborn bibliotek for å generere boksen. Her er nettstilen definert ved hjelp av set_style () metode. De LOAD_DATASET () metoden brukes til å laste inn dataene til 'diamanter ' Datasett. De fem første postene er skrevet ut fra datasettet og Boxplot () Metoden brukes deretter til å tegne boksen 'dybde,'Med blå farge.

# Importer Seaborn Library for å generere boksen
Importer sjøborn som SNS
# Importer matplotlib for å konfigurere figurstørrelsen på boksen
Importer matplotlib.Pyplot som Plt
# Import get_ipython for format ut -inline
fra ipython import get_ipython
get_ipython ().run_line_magic ('matplotlib', 'inline')
# Sett opp nettstilen
sns.set_style ("WhiteGrid")
# Sett opp figurstørrelsen
plt.rcparams ['figur.FigSize '] = (8,4)
# Last inn eksemplet datasettet
diamant_dataset = sns.LOAD_DATASET ('Diamonds')
# Vis de første 5 postene til datasettet
Print (Diamond_Dataset.hode())
# Tegn boksen Tomter
sns.boxplot (x = diamant_dataset ['dybde'], farge = 'blå')

Produksjon

Følgende utgang vises etter å ha utført koden.

Eksempel 4: Boksplott basert på X- og Y -parametere

Følgende eksempel bruker eksemplet datasettet som heter 'flyreiser'For å tegne boksen. Her både X- og Y -parametrene til boksen () Metoden brukes til å tegne figuren. De andre uttalelsene ligner på forrige eksempel.

# Importer Seaborn Library for å generere boksen
Importer sjøborn som SNS
# Importer matplotlib for å konfigurere figurstørrelsen på boksen
Importer matplotlib.Pyplot som Plt
# Import get_ipython for format ut -inline
fra ipython import get_ipython
get_ipython ().run_line_magic ('matplotlib', 'inline')
# Sett opp nettstilen
sns.set_style ("Darkgrid")
# Sett opp figurstørrelsen
plt.rcparams ['figur.FigSize '] = (12,4)
# Last inn eksemplet datasettet
Flight_Dataset = SNS.LOAD_DATASET ('Flights')
# Vis de første 5 postene til datasettet
Print (Flight_Dataset.hode())
# Tegn boksen Tomter
sns.boxplot (x = 'måned', y = 'passasjerer', data = flight_dataset, color = 'blue')

Produksjon

Følgende utgang vises etter å ha utført koden.

Konklusjon

Når du jobber med en stor mengde data, kan det være lurt å oppsummere dataene ved å bruke et diagram, for eksempel en boksplott. Denne opplæringen brukte flere eksempler for å vise deg hvordan du kan generere boksplott med to Python -biblioteker.