Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Histogramme | Plus de Graphiques Statistiques
Visualisation Ultime Avec Python
course content

Contenu du cours

Visualisation Ultime Avec Python

Visualisation Ultime Avec Python

1. Introduction à Matplotlib
2. Création de Graphiques Couramment Utilisés
3. Personnalisation des Graphiques
4. Plus de Graphiques Statistiques
5. Tracé avec Seaborn

book
Histogramme

Commençons par un histogramme. Les histogrammes sont utilisés pour représenter la distribution de fréquence ou de probabilité d'une variable donnée (distribution approximative) en utilisant des barres verticales de largeur égale (ou nous pouvons les appeler barres).

Le module pyplot a une fonction spéciale appelée hist pour créer un histogramme. Le premier et le seul paramètre requis est notre donnée (appelée x) qui peut être soit un tableau, soit une séquence de tableaux. Si une séquence de tableaux est passée, les barres pour chaque tableau sont peintes en différentes couleurs. Voici un exemple simple pour vous :

12345678
import pandas as pd import matplotlib.pyplot as plt url = 'https://staging-content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' # Loading the dataset with the average yearly temperatures in Boston and Seattle weather_df = pd.read_csv(url, index_col=0) # Creating a histogram plt.hist(weather_df['Seattle']) plt.show()
copy

Intervalles et Hauteur

Nous avons passé un objet Series, qui contient les températures moyennes annuelles à Seattle, dans la fonction hist(). Notre échantillon a été divisé en 10 intervalles égaux par défaut, allant de la valeur minimale à la valeur maximale. Cependant, il n'y a que 9 barres, car il n'y a pas de valeurs appartenant au deuxième intervalle.

La hauteur de chaque barre par défaut est égale à la fréquence des valeurs dans cet intervalle (nombre de fois qu'elles apparaissent).

Nombre de Classes

Un autre paramètre important, mais optionnel, est bins qui prend soit le nombre de classes (entier) soit une séquence de nombres spécifiant les bords des classes ou une chaîne de caractères. La plupart du temps, passer le nombre de classes est plus que suffisant.

Il existe plusieurs méthodes pour déterminer la largeur des classes (plus d'informations ici), mais ici nous utiliserons la formule de Sturges (écrite en Python) : bins = 1+int(np.log2(n)) où n est la taille de l'échantillon (la taille du tableau).

Voyons cela en action :

12345678
import pandas as pd import matplotlib.pyplot as plt import numpy as np url = 'https://staging-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

Le nombre de lignes dans le DataFrame est de 26 (la taille de la Series), donc le nombre de classes résultant est de 5.

Approximation de la Densité de Probabilité

Tout cela est bien, mais que faire si nous voulons examiner l'approximation de la densité de probabilité ? Tout ce que nous devons faire est de définir le paramètre density à True.

Maintenant, la hauteur de chaque barre sera le nombre de valeurs dans l'intervalle divisé par le produit du nombre total de valeurs (la taille de l'échantillon) et de la largeur de la barre. En conséquence, la somme des aires des barres sera égale à 1, ce qui est exactement ce que nous attendons d'une fonction de densité de probabilité.

Modifions maintenant notre exemple :

12345678
import pandas as pd import matplotlib.pyplot as plt import numpy as np url = 'https://staging-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

Nous avons maintenant une approximation de la fonction de densité de probabilité pour nos données de température.

Si vous souhaitez explorer davantage les paramètres de la fonction hist(), vous pouvez consulter sa documentation.

Tâche

Swipe to start coding

Votre tâche consiste à créer une approximation d'une fonction de densité de probabilité en utilisant un échantillon de la distribution normale standard :

  1. Utilisez la fonction correcte pour créer un histogramme.
  2. Utilisez normal_sample comme données pour l'histogramme.
  3. Spécifiez le nombre de classes comme deuxième argument en utilisant la formule de Sturges.
  4. Faites de l'histogramme une approximation d'une fonction de densité de probabilité en spécifiant correctement l'argument le plus à droite.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 1
toggle bottom row

book
Histogramme

Commençons par un histogramme. Les histogrammes sont utilisés pour représenter la distribution de fréquence ou de probabilité d'une variable donnée (distribution approximative) en utilisant des barres verticales de largeur égale (ou nous pouvons les appeler barres).

Le module pyplot a une fonction spéciale appelée hist pour créer un histogramme. Le premier et le seul paramètre requis est notre donnée (appelée x) qui peut être soit un tableau, soit une séquence de tableaux. Si une séquence de tableaux est passée, les barres pour chaque tableau sont peintes en différentes couleurs. Voici un exemple simple pour vous :

12345678
import pandas as pd import matplotlib.pyplot as plt url = 'https://staging-content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' # Loading the dataset with the average yearly temperatures in Boston and Seattle weather_df = pd.read_csv(url, index_col=0) # Creating a histogram plt.hist(weather_df['Seattle']) plt.show()
copy

Intervalles et Hauteur

Nous avons passé un objet Series, qui contient les températures moyennes annuelles à Seattle, dans la fonction hist(). Notre échantillon a été divisé en 10 intervalles égaux par défaut, allant de la valeur minimale à la valeur maximale. Cependant, il n'y a que 9 barres, car il n'y a pas de valeurs appartenant au deuxième intervalle.

La hauteur de chaque barre par défaut est égale à la fréquence des valeurs dans cet intervalle (nombre de fois qu'elles apparaissent).

Nombre de Classes

Un autre paramètre important, mais optionnel, est bins qui prend soit le nombre de classes (entier) soit une séquence de nombres spécifiant les bords des classes ou une chaîne de caractères. La plupart du temps, passer le nombre de classes est plus que suffisant.

Il existe plusieurs méthodes pour déterminer la largeur des classes (plus d'informations ici), mais ici nous utiliserons la formule de Sturges (écrite en Python) : bins = 1+int(np.log2(n)) où n est la taille de l'échantillon (la taille du tableau).

Voyons cela en action :

12345678
import pandas as pd import matplotlib.pyplot as plt import numpy as np url = 'https://staging-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

Le nombre de lignes dans le DataFrame est de 26 (la taille de la Series), donc le nombre de classes résultant est de 5.

Approximation de la Densité de Probabilité

Tout cela est bien, mais que faire si nous voulons examiner l'approximation de la densité de probabilité ? Tout ce que nous devons faire est de définir le paramètre density à True.

Maintenant, la hauteur de chaque barre sera le nombre de valeurs dans l'intervalle divisé par le produit du nombre total de valeurs (la taille de l'échantillon) et de la largeur de la barre. En conséquence, la somme des aires des barres sera égale à 1, ce qui est exactement ce que nous attendons d'une fonction de densité de probabilité.

Modifions maintenant notre exemple :

12345678
import pandas as pd import matplotlib.pyplot as plt import numpy as np url = 'https://staging-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

Nous avons maintenant une approximation de la fonction de densité de probabilité pour nos données de température.

Si vous souhaitez explorer davantage les paramètres de la fonction hist(), vous pouvez consulter sa documentation.

Tâche

Swipe to start coding

Votre tâche consiste à créer une approximation d'une fonction de densité de probabilité en utilisant un échantillon de la distribution normale standard :

  1. Utilisez la fonction correcte pour créer un histogramme.
  2. Utilisez normal_sample comme données pour l'histogramme.
  3. Spécifiez le nombre de classes comme deuxième argument en utilisant la formule de Sturges.
  4. Faites de l'histogramme une approximation d'une fonction de densité de probabilité en spécifiant correctement l'argument le plus à droite.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 1
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
We're sorry to hear that something went wrong. What happened?
some-alt