KDE-Diagram
Ett Kernel Density Estimation (KDE)-diagram är en typ av diagram som visualiserar den uppskattade sannolikhetstäthetsfunktionen för en kontinuerlig variabel. Till skillnad från ett histogram, som visar data med diskreta staplar grupperade i intervall, representerar ett KDE-diagram fördelningen som en jämn, kontinuerlig kurva baserad på alla datapunkter.
Detta exempel visar ett histogram kombinerat med ett KDE-diagram (orange kurva), vilket ger en tydligare approximation av sannolikhetstäthetsfunktionen än enbart histogrammet.
I seaborn
gör funktionen kdeplot()
det enkelt att skapa KDE-diagram. Dess viktigaste parametrar—data
, x
och y
—fungerar på samma sätt som i countplot()
.
Första alternativet
Endast en av parametrarna kan anges genom att skicka en sekvens av värden, vilket möjliggör individuell anpassning för varje element.
import pandas as pd import matplotlib.pyplot as plt import seaborn as sns # Loading the dataset with the average yearly temperatures in Boston and Seattle url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Creating a KDE plot setting only the data parameter sns.kdeplot(data=weather_df['Seattle'], fill=True) plt.show()
Parametern data
anges genom att skicka ett Series-objekt, och parametern fill
används för att fylla området under kurvan, vilket som standard inte är ifyllt.
Andra alternativet
Det är också möjligt att ange ett 2D-objekt som en DataFrame för data
och ett kolumnnamn eller en nyckel om data
är en dictionary för x
(vertikal orientering) eller y
(horisontell orientering):
import pandas as pd import matplotlib.pyplot as plt import seaborn as sns # Loading the dataset with the average yearly temperatures in Boston and Seattle url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Creating a KDE plot setting both the data and x parameters sns.kdeplot(data=weather_df, x='Seattle', fill=True) plt.show()
Samma resultat uppnåddes genom att skicka hela DataFrame
som data
-parameter och ange kolumnnamnet för x
-parametern.
Det skapade KDE-diagrammet uppvisar en karakteristisk klockkurva, som starkt påminner om en normalfördelning med ett medelvärde runt 52°F.
Om du vill fördjupa dig mer i funktionen KDE plot, kan du läsa mer i kdeplot()
dokumentationen.
Swipe to start coding
- Använd rätt funktion för att skapa ett KDE-diagram.
- Använd
countries_df
som data för diagrammet (det första argumentet). - Ange
'GDP per capita'
som kolumn att använda och orienteringen till horisontell via det andra argumentet. - Fyll området under kurvan via det tredje (högra) argumentet.
Lösning
Tack för dina kommentarer!