Comment calculer la probabilité conditionnelle en Python



La probabilité conditionnelle que l’événement A se produise, étant donné que l’événement B s’est produit, est calculée comme suit :

P(UNE|B) = P(UNE∩B) / P(B)

où:

P(A∩B) = la probabilité que l’événement A et l’événement B se produisent tous deux.

P(B) = la probabilité que l’événement B se produise.

L’exemple suivant montre comment utiliser cette formule pour calculer des probabilités conditionnelles en Python.

Exemple : calculer la probabilité conditionnelle en Python

Supposons que nous envoyions une enquête à 300 personnes pour leur demander quel sport elles préfèrent : le baseball, le basket-ball, le football ou le football.

Nous pouvons créer le tableau suivant en Python pour contenir les réponses à l’enquête :

import pandas as pd
import numpy as np

#create pandas DataFrame with raw data
df = pd.DataFrame({'gender': np.repeat(np.array(['Male', 'Female']), 150),
                   'sport': np.repeat(np.array(['Baseball', 'Basketball', 'Football',
                                                'Soccer', 'Baseball', 'Basketball',
                                                'Football', 'Soccer']), 
                                    (34, 40, 58, 18, 34, 52, 20, 44))})

#produce contingency table to summarize raw data
survey_data = pd.crosstab(index=df['gender'], columns=df['sport'], margins=True)

#view contingency table
survey_data

sport	Baseball	Basketball	Football	Soccer	 All
gender					
Female	      34	        52	      20	    44	 150
Male	      34	        40	      58	    18	 150
All	      68	        92	      78	    62	 300

Connexe : Comment utiliser pd.crosstab() pour créer des tableaux de contingence en Python

Nous pouvons utiliser la syntaxe suivante pour extraire les valeurs du tableau :

#extract value in second row and first column 
survey_data.iloc[1, 0]

[1] 34

Nous pouvons utiliser la syntaxe suivante pour calculer la probabilité qu’un individu soit un homme, étant donné qu’il préfère le baseball comme sport favori :

#calculate probability of being male, given that individual prefers baseball
survey_data.iloc[1, 0] / survey_data.iloc[2, 0]

0.5

Et nous pouvons utiliser la syntaxe suivante pour calculer la probabilité qu’un individu préfère le basket-ball comme sport préféré, étant donné qu’il est une femme :

#calculate probability of preferring basketball, given that individual is female
survey_data.iloc[0, 1] / survey_data.iloc[0, 4]

0.3466666666666667

Nous pouvons utiliser cette approche de base pour calculer n’importe quelle probabilité conditionnelle que nous souhaitons à partir du tableau de contingence.

Ressources additionnelles

Les didacticiels suivants fournissent des informations supplémentaires sur la gestion des probabilités :

Loi de probabilité totale
Comment trouver la moyenne d’une distribution de probabilité
Comment trouver l’écart type d’une distribution de probabilité

Ajouter un commentaire

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