Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Histogram | Fler Statistiska Diagram
Ultimat Visualisering med Python

bookHistogram

Note
Definition

Histogrammer representerar frekvens- eller sannolikhetsfördelningen av en variabel genom att använda vertikala staplar med lika bredd, ofta kallade staplar.

Modulen pyplot tillhandahåller funktionen hist för att skapa histogram. Den obligatoriska parametern är data (x), som kan vara en array eller en sekvens av arrayer. Om flera arrayer anges visas varje i en annan färg.

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

Intervall och Höjd

En Series med årliga temperaturer i Seattle skickades till hist(). Som standard delas data upp i 10 lika stora intervall mellan minimum och maximum. Endast 9 staplar visas eftersom ett intervall inte innehåller några värden.

Stapelhöjden visar frekvensen — hur många datapunkter som faller inom varje intervall.

Antal Staplar

Den valfria parametern bins kan vara ett heltal (antal staplar), en sekvens av kanter eller en sträng. Vanligtvis räcker det att ange antalet staplar.

En vanlig regel för att välja antal staplar är Sturges’ formel, baserad på urvalsstorlek:

bins = 1 + int(np.log2(n))

Där n är datamängdens storlek.

Note
Läs Mer

Du kan utforska ytterligare metoder för beräkning av staplar här.

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

Antalet rader i DataFrame är 26 (storleken på Series), så det resulterande antalet intervall är 5.

Sannolikhetstäthetsapproximation

För att approximera en sannolikhetstäthet, ange density=True i hist(). Då blir varje intervallhöjd:

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

där:

  • ( n ) — totalt antal värden,
  • ( m ) — antal i intervallet,
  • ( w ) — intervallbredd.

Detta gör att den totala arean under histogrammet blir 1, vilket motsvarar beteendet hos 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

Detta ger en approximation av sannolikhetstäthetsfunktionen för temperaturdatan.

Note
Läs mer

Om du vill utforska mer om parametrarna för hist(), kan du läsa mer i hist() dokumentationen.

Uppgift

Swipe to start coding

Skapa en approximation av en sannolikhetstäthetsfunktion med ett stickprov från standardnormalfördelningen:

  1. Använd rätt funktion för att skapa ett histogram.
  2. Använd normal_sample som data för histogrammet.
  3. Ange antalet intervall (bins) som det andra argumentet med hjälp av Sturges' formel.
  4. Gör histogrammet till en approximation av en sannolikhetstäthetsfunktion genom att korrekt ange det högra argumentet.

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 1
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

Can you explain how the `density=True` parameter changes the histogram?

What does the resulting histogram tell us about the Seattle temperature data?

How can I compare histograms for Boston and Seattle on the same plot?

close

bookHistogram

Svep för att visa menyn

Note
Definition

Histogrammer representerar frekvens- eller sannolikhetsfördelningen av en variabel genom att använda vertikala staplar med lika bredd, ofta kallade staplar.

Modulen pyplot tillhandahåller funktionen hist för att skapa histogram. Den obligatoriska parametern är data (x), som kan vara en array eller en sekvens av arrayer. Om flera arrayer anges visas varje i en annan färg.

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

Intervall och Höjd

En Series med årliga temperaturer i Seattle skickades till hist(). Som standard delas data upp i 10 lika stora intervall mellan minimum och maximum. Endast 9 staplar visas eftersom ett intervall inte innehåller några värden.

Stapelhöjden visar frekvensen — hur många datapunkter som faller inom varje intervall.

Antal Staplar

Den valfria parametern bins kan vara ett heltal (antal staplar), en sekvens av kanter eller en sträng. Vanligtvis räcker det att ange antalet staplar.

En vanlig regel för att välja antal staplar är Sturges’ formel, baserad på urvalsstorlek:

bins = 1 + int(np.log2(n))

Där n är datamängdens storlek.

Note
Läs Mer

Du kan utforska ytterligare metoder för beräkning av staplar här.

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

Antalet rader i DataFrame är 26 (storleken på Series), så det resulterande antalet intervall är 5.

Sannolikhetstäthetsapproximation

För att approximera en sannolikhetstäthet, ange density=True i hist(). Då blir varje intervallhöjd:

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

där:

  • ( n ) — totalt antal värden,
  • ( m ) — antal i intervallet,
  • ( w ) — intervallbredd.

Detta gör att den totala arean under histogrammet blir 1, vilket motsvarar beteendet hos 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

Detta ger en approximation av sannolikhetstäthetsfunktionen för temperaturdatan.

Note
Läs mer

Om du vill utforska mer om parametrarna för hist(), kan du läsa mer i hist() dokumentationen.

Uppgift

Swipe to start coding

Skapa en approximation av en sannolikhetstäthetsfunktion med ett stickprov från standardnormalfördelningen:

  1. Använd rätt funktion för att skapa ett histogram.
  2. Använd normal_sample som data för histogrammet.
  3. Ange antalet intervall (bins) som det andra argumentet med hjälp av Sturges' formel.
  4. Gör histogrammet till en approximation av en sannolikhetstäthetsfunktion genom att korrekt ange det högra argumentet.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 1
single

single

some-alt