Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment utiliser la distribution exponentielle en Python



La distribution exponentielle est une distribution de probabilité utilisée pour modéliser le temps que nous devons attendre jusqu’à ce qu’un certain événement se produise.

Si une variable aléatoire X suit une distribution exponentielle, alors la fonction de distribution cumulative de X peut s’écrire :

F (x; λ) = 1 – e -λx

où:

  • λ : le paramètre de taux (calculé comme λ = 1/μ)
  • e : Une constante à peu près égale à 2,718

Ce tutoriel explique comment utiliser la distribution exponentielle en Python.

Comment générer une distribution exponentielle

Vous pouvez utiliser la fonction expon.rvs(scale, size) de la bibliothèque SciPy en Python pour générer des valeurs aléatoires à partir d’une distribution exponentielle avec un paramètre de taux et une taille d’échantillon spécifiques :

from scipy.stats import expon

#generate random values from exponential distribution with rate=40 and sample size=10
expon.rvs(scale=40, size=10)

array([116.5368323 ,  67.23514699,  12.00399043,  40.74580584,
        34.60922432,   2.68266663,  22.70459831,  97.66661811,
         6.64272914,  46.15547298])

Remarque : Vous pouvez trouver la documentation complète de la bibliothèque SciPy ici .

Comment calculer les probabilités à l’aide d’une distribution exponentielle

Supposons que le nombre moyen de minutes entre les éruptions d’un certain geyser soit de 40 minutes. Quelle est la probabilité que nous devions attendre moins de 50 minutes pour une éruption ?

Pour résoudre ce problème, nous devons d’abord calculer le paramètre de taux :

  • λ = 1/µ
  • λ = 1/40
  • λ = 0,025

Nous pouvons brancher λ = 0,025 et x = 50 à la formule du CDF :

  • P(X ≤ x) = 1 – e -λx
  • P(X ≤ 50) = 1 – e -0,025(50)
  • P(X ≤ 50) = 0,7135

La probabilité que nous devions attendre moins de 50 minutes pour la prochaine éruption est de 0,7135 .

Nous pouvons utiliser la fonction expon.cdf() de SciPy pour résoudre ce problème en Python :

from scipy.stats import expon

#calculate probability that x is less than 50 when mean rate is 40
expon.cdf(x=50, scale=40)

0.7134952031398099

La probabilité que nous devions attendre moins de 50 minutes pour la prochaine éruption est de 0,7135 .

Cela correspond à la valeur que nous avons calculée manuellement.

Comment tracer une distribution exponentielle

Vous pouvez utiliser la syntaxe suivante pour tracer une distribution exponentielle avec un paramètre de taux donné :

from scipy.stats import expon
import matplotlib.pyplot as plt

#generate exponential distribution with sample size 10000
x = expon.rvs(scale=40, size=10000)

#create plot of exponential distribution
plt.hist(x, density=True, edgecolor='black')

Ressources additionnelles

Les didacticiels suivants expliquent comment utiliser d’autres distributions courantes en Python :

Comment utiliser la distribution de Poisson en Python
Comment utiliser la distribution t en Python
Comment utiliser la distribution uniforme en Python

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *