Density plots brukes for å illustrere distribusjonen blant et eller flere datasett.
I dette eksempelet ønsker vi å illustrere alderdistribusjon i tre ulike grupper (A, B og C):
# importer moduler
import pandas as pd
import seaborn as sns
# hent data
df = pd.read_excel('Book1.xlsx')
print(df)
Kundegruppe Alder
0 A 39
1 A 43
2 B 37
3 B 42
4 C 54
... ...
1939 A 35
1940 B 39
1941 B 43
1942 C 41
1943 C 44
Før vi kan lage diagrammet må vi endre struktur på datasettet. Vi trenger en kolonne per kundegruppe og tilhørende alderobservasjoner. Dette får vi til ved å bruke .pivot funksjonen:
df = df.pivot(columns='Kundegruppe',
values='Alder')
print(df)
A B C
0 39.0 NaN NaN
1 43.0 NaN NaN
2 NaN 37.0 NaN
3 NaN 42.0 NaN
4 NaN NaN 54.0
... ... ...
1939 35.0 NaN NaN
1940 NaN 39.0 NaN
1941 NaN 43.0 NaN
1942 NaN NaN 41.0
1943 NaN NaN 44.0
Nå gjenstår det bare å lage diagrammet.
sns.kdeplot - definerer type diagram
df['A'] - velger datasett / kolonne
shade=True - diagrammet skal ha fyll/skygge
color='r' - definerer farge
sns.kdeplot - definerer type diagram
df['A'] - velger datasett / kolonne
shade=True - diagrammet skal ha fyll/skygge
color='r' - definerer farge
p1=sns.kdeplot(df['A'],shade=True,color='r')
p1=sns.kdeplot(df['B'],shade=True,color='g')
p1=sns.kdeplot(df['C'],shade=True,color='b')
Scritp:
import pandas as pd
import seaborn as sns
df = pd.read_excel('Book1.xlsx')
df = df.pivot(columns='Kundegruppe',
values='Alder')
p1=sns.kdeplot(df['A'],shade=True,color='r')
p1=sns.kdeplot(df['B'],shade=False,color='g')
p1=sns.kdeplot(df['C'],shade=True,color='b')
Ingen kommentarer:
Legg inn en kommentar