Visualisering af Fordelinger med Histogrammer
Histogrammer repræsenterer frekvens- eller sandsynlighedsfordelingen af en variabel ved at anvende lodrette søjler af ens bredde, ofte kaldet søjler.
Modulet pyplot tilbyder funktionen hist til at oprette histogrammer. Det påkrævede parameter er dataene (x), som kan være et array eller en sekvens af arrays. Hvis der gives flere arrays, vises hver i en forskellig farve.
12345678910import pandas as pd import matplotlib.pyplot as plt # 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 histogram plt.hist(weather_df['Seattle']) plt.show()
Intervaller og Højde
En Series med årlige temperaturer fra Seattle blev sendt til hist(). Som standard deles dataene op i 10 lige store intervaller mellem minimum og maksimum. Kun 9 søjler vises, fordi ét interval ikke indeholder nogen værdier.
Søjlens højde viser frekvensen — hvor mange datapunkter der falder i hvert interval.
Antal Søjler
Den valgfrie bins parameter kan være et heltal (antal søjler), en sekvens af kanter eller en streng. Normalt er det tilstrækkeligt at angive antallet af søjler.
En almindelig regel for valg af antal søjler er Sturges’ formel, baseret på stikprøvestørrelsen:
bins = 1 + int(np.log2(n))
hvor n er datasættets størrelse.
Du kan udforske yderligere metoder til beregning af søjler her.
12345678910import pandas as pd import matplotlib.pyplot as plt import numpy as np 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) # Specifying the number of bins plt.hist(weather_df['Seattle'], bins=1 + int(np.log2(len(weather_df)))) plt.show()
Antallet af rækker i DataFrame er 26 (størrelsen på Series), så det resulterende antal intervaller er 5.
Sandsynlighedstætheds-approksimation
For at approksimere en sandsynlighedstæthed, angiv density=True i hist().
Herefter er højden af hvert interval:
hvor:
- n — samlet antal værdier;
- m — antal i intervallet;
- w — intervalbredde.
Dette gør det samlede areal af histogrammet lig med 1, hvilket svarer til opførslen for en PDF.
12345678910import pandas as pd import matplotlib.pyplot as plt import numpy as np 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) # Making a histogram a probability density function approximation plt.hist(weather_df['Seattle'], bins=1 + int(np.log2(len(weather_df))), density=True) plt.show()
Dette giver en tilnærmelse af sandsynlighedstæthedsfunktionen for temperaturdataene.
Hvis du ønsker at udforske flere af hist()-parametrene, kan du se hist() dokumentationen.
Swipe to start coding
Opret en tilnærmelse af en sandsynlighedstæthedsfunktion ved hjælp af et sample fra standard normalfordelingen:
- Brug den korrekte funktion til at oprette et histogram.
- Brug
normal_samplesom data til histogrammet. - Angiv antallet af bins som det andet argument ved hjælp af Sturges' formel.
- Gør histogrammet til en tilnærmelse af en sandsynlighedstæthedsfunktion ved korrekt at angive det yderste argument.
Løsning
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Fantastisk!
Completion rate forbedret til 6.25
Visualisering af Fordelinger med Histogrammer
Stryg for at vise menuen
Histogrammer repræsenterer frekvens- eller sandsynlighedsfordelingen af en variabel ved at anvende lodrette søjler af ens bredde, ofte kaldet søjler.
Modulet pyplot tilbyder funktionen hist til at oprette histogrammer. Det påkrævede parameter er dataene (x), som kan være et array eller en sekvens af arrays. Hvis der gives flere arrays, vises hver i en forskellig farve.
12345678910import pandas as pd import matplotlib.pyplot as plt # 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 histogram plt.hist(weather_df['Seattle']) plt.show()
Intervaller og Højde
En Series med årlige temperaturer fra Seattle blev sendt til hist(). Som standard deles dataene op i 10 lige store intervaller mellem minimum og maksimum. Kun 9 søjler vises, fordi ét interval ikke indeholder nogen værdier.
Søjlens højde viser frekvensen — hvor mange datapunkter der falder i hvert interval.
Antal Søjler
Den valgfrie bins parameter kan være et heltal (antal søjler), en sekvens af kanter eller en streng. Normalt er det tilstrækkeligt at angive antallet af søjler.
En almindelig regel for valg af antal søjler er Sturges’ formel, baseret på stikprøvestørrelsen:
bins = 1 + int(np.log2(n))
hvor n er datasættets størrelse.
Du kan udforske yderligere metoder til beregning af søjler her.
12345678910import pandas as pd import matplotlib.pyplot as plt import numpy as np 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) # Specifying the number of bins plt.hist(weather_df['Seattle'], bins=1 + int(np.log2(len(weather_df)))) plt.show()
Antallet af rækker i DataFrame er 26 (størrelsen på Series), så det resulterende antal intervaller er 5.
Sandsynlighedstætheds-approksimation
For at approksimere en sandsynlighedstæthed, angiv density=True i hist().
Herefter er højden af hvert interval:
hvor:
- n — samlet antal værdier;
- m — antal i intervallet;
- w — intervalbredde.
Dette gør det samlede areal af histogrammet lig med 1, hvilket svarer til opførslen for en PDF.
12345678910import pandas as pd import matplotlib.pyplot as plt import numpy as np 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) # Making a histogram a probability density function approximation plt.hist(weather_df['Seattle'], bins=1 + int(np.log2(len(weather_df))), density=True) plt.show()
Dette giver en tilnærmelse af sandsynlighedstæthedsfunktionen for temperaturdataene.
Hvis du ønsker at udforske flere af hist()-parametrene, kan du se hist() dokumentationen.
Swipe to start coding
Opret en tilnærmelse af en sandsynlighedstæthedsfunktion ved hjælp af et sample fra standard normalfordelingen:
- Brug den korrekte funktion til at oprette et histogram.
- Brug
normal_samplesom data til histogrammet. - Angiv antallet af bins som det andet argument ved hjælp af Sturges' formel.
- Gør histogrammet til en tilnærmelse af en sandsynlighedstæthedsfunktion ved korrekt at angive det yderste argument.
Løsning
Tak for dine kommentarer!
single