Como calcular a probabilidade condicional em python
A probabilidade condicional de ocorrência do evento A , dado que o evento B ocorreu, é calculada da seguinte forma:
P(A|B) = P(A∩B) / P(B)
Ouro:
P(A∩B) = a probabilidade de que o evento A e o evento B ocorram.
P(B) = a probabilidade de que o evento B ocorra.
O exemplo a seguir mostra como usar esta fórmula para calcular probabilidades condicionais em Python.
Exemplo: Calcular Probabilidade Condicional em Python
Digamos que enviamos uma pesquisa para 300 pessoas perguntando qual esporte elas preferem: beisebol, basquete, futebol ou futebol americano.
Podemos criar a seguinte tabela em Python para armazenar as respostas da pesquisa:
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
Relacionado : Como usar pd.crosstab() para criar tabelas de contingência em Python
Podemos usar a seguinte sintaxe para extrair os valores do array:
#extract value in second row and first column
survey_data. iloc [1, 0]
[1] 34
Podemos usar a seguinte sintaxe para calcular a probabilidade de um indivíduo ser do sexo masculino, visto que prefere o beisebol como esporte favorito:
#calculate probability of being male, given that individual prefers baseball
survey_data. iloc [1, 0]/survey_data. iloc [2, 0]
0.5
E podemos usar a seguinte sintaxe para calcular a probabilidade de um indivíduo preferir o basquete como esporte preferido, visto que é mulher:
#calculate probability of preferring basketball, given that individual is female
survey_data. iloc [0,1]/survey_data. iloc [0, 4]
0.3466666666666667
Podemos usar esta abordagem básica para calcular qualquer probabilidade condicional que quisermos da tabela de contingência.
Recursos adicionais
Os tutoriais a seguir fornecem informações adicionais sobre gerenciamento de probabilidade:
Lei da probabilidade total
Como encontrar a média de uma distribuição de probabilidade
Como encontrar o desvio padrão de uma distribuição de probabilidade