Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Histogram | Flere Statistiske Diagrammer
Quizzes & Challenges
Quizzes
Challenges
/
Ultimativ Visualisering med Python

bookHistogram

Note
Definition

Histogrammer repræsenterer frekvens- eller sandsynlighedsfordelingen af en variabel ved at bruge 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.

12345678910
import 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()
copy

Intervaller og Højde

En Series med årlige temperaturer fra Seattle blev givet 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 parameter bins 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.

Note
Læs Mere

Du kan udforske yderligere metoder til beregning af søjler her.

12345678910
import 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()
copy

Antallet af rækker i DataFrame er 26 (størrelsen af Series), så det resulterende antal bins er 5.

Sandsynlighedstætheds-approksimation

For at approksimere en sandsynlighedstæthed, angiv density=True i hist(). Herefter er højden af hver bin:

Height=mnw\text{Height} = \frac{m}{n \cdot w}

hvor:

  • ( n ) — samlet antal værdier,
  • ( m ) — antal i bin,
  • ( w ) — bin-bredde.

Dette gør, at det samlede areal af histogrammet er 1, hvilket svarer til opførslen for en PDF.

12345678910
import 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()
copy

Dette giver en tilnærmelse af sandsynlighedstæthedsfunktionen for temperaturdataene.

Note
Undersøg Mere

Hvis du vil udforske flere af parametrene for hist(), kan du se hist() dokumentationen.

Opgave

Swipe to start coding

Opret en tilnærmelse af en sandsynlighedstæthedsfunktion ved hjælp af et udsnit fra standard normalfordelingen:

  1. Brug den korrekte funktion til at oprette et histogram.
  2. Brug normal_sample som data til histogrammet.
  3. Angiv antallet af søjler som det andet argument ved hjælp af Sturges' formel.
  4. Gør histogrammet til en tilnærmelse af en sandsynlighedstæthedsfunktion ved korrekt at angive det højre argument.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 1
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

close

bookHistogram

Stryg for at vise menuen

Note
Definition

Histogrammer repræsenterer frekvens- eller sandsynlighedsfordelingen af en variabel ved at bruge 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.

12345678910
import 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()
copy

Intervaller og Højde

En Series med årlige temperaturer fra Seattle blev givet 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 parameter bins 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.

Note
Læs Mere

Du kan udforske yderligere metoder til beregning af søjler her.

12345678910
import 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()
copy

Antallet af rækker i DataFrame er 26 (størrelsen af Series), så det resulterende antal bins er 5.

Sandsynlighedstætheds-approksimation

For at approksimere en sandsynlighedstæthed, angiv density=True i hist(). Herefter er højden af hver bin:

Height=mnw\text{Height} = \frac{m}{n \cdot w}

hvor:

  • ( n ) — samlet antal værdier,
  • ( m ) — antal i bin,
  • ( w ) — bin-bredde.

Dette gør, at det samlede areal af histogrammet er 1, hvilket svarer til opførslen for en PDF.

12345678910
import 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()
copy

Dette giver en tilnærmelse af sandsynlighedstæthedsfunktionen for temperaturdataene.

Note
Undersøg Mere

Hvis du vil udforske flere af parametrene for hist(), kan du se hist() dokumentationen.

Opgave

Swipe to start coding

Opret en tilnærmelse af en sandsynlighedstæthedsfunktion ved hjælp af et udsnit fra standard normalfordelingen:

  1. Brug den korrekte funktion til at oprette et histogram.
  2. Brug normal_sample som data til histogrammet.
  3. Angiv antallet af søjler som det andet argument ved hjælp af Sturges' formel.
  4. Gør histogrammet til en tilnærmelse af en sandsynlighedstæthedsfunktion ved korrekt at angive det højre argument.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 1
single

single

some-alt