La probabilità marginale è una misura di probabilità che si ottiene sommando (o integrando, nel caso di variabili continue) la probabilità congiunta su uno o più eventi. In altre parole, si tratta di ottenere la probabilità di un evento individuale ignorando le informazioni sugli altri eventi coinvolti. Questa operazione può essere eseguita sia su variabili discrete che su variabili continue.
[wpda_org_chart tree_id=7 theme_id=50]
La Probabilità Marginale di variabili discrete
Per illustrare meglio il concetto di probabilità marginale, consideriamo due variabili discrete X e Y con le relative distribuzioni di probabilità congiunte . La probabilità marginale di X, indicata come , si ottiene sommando la probabilità congiunta su tutte le possibili realizzazioni di Y. Formalmente, è data dalla seguente formula:
Analogamente, la probabilità marginale di Y, indicata come , si ottiene sommando la probabilità congiunta su tutte le possibili realizzazioni di X:
Se invece X e Y sono variabili continue, le somme vengono sostituite da integrali nelle formule.
La probabilità marginale è utile perché fornisce informazioni sulla probabilità di singoli eventi senza considerare gli altri eventi coinvolti. Questo può essere particolarmente importante in contesti in cui si vogliono analizzare o interpretare le distribuzioni di probabilità in modo più dettagliato.
In breve, la probabilità marginale riguarda la probabilità di un evento singolo, ottenuta ignorando le informazioni sugli altri eventi.
Esempio in Python di Calcolo della Probabilità Marginale di variabili discrete
Supponiamo di avere una variabile casuale bidimensionale con distribuzione di probabilità congiunta. Di seguito, mostro un esempio di calcolo della probabilità marginale in Python per variabili discrete:
# Esempio di distribuzione di probabilità congiunta P(X, Y)
prob_congiunta = {
(1, 'A'): 0.1,
(1, 'B'): 0.2,
(2, 'A'): 0.3,
(2, 'B'): 0.4,
}
# Calcola la probabilità marginale di X
def prob_marginale_X(x):
return sum(prob_congiunta[(x, y)] for y in set(y for _, y in prob_congiunta))
# Calcola la probabilità marginale di Y
def prob_marginale_Y(y):
return sum(prob_congiunta[(x, y)] for x in set(x for x, _ in prob_congiunta))
# Test delle funzioni
x_value = 1
y_value = 'A'
prob_X = prob_marginale_X(x_value)
prob_Y = prob_marginale_Y(y_value)
print(f"Probabilità marginale di X={x_value}: {prob_X}")
print(f"Probabilità marginale di Y={y_value}: {prob_Y}")
In questo esempio, prob_congiunta
rappresenta una distribuzione di probabilità congiunta per due variabili, X e Y. Le funzioni prob_marginale_X
e prob_marginale_Y
calcolano rispettivamente le probabilità marginali di X e Y.
Eseguendo il codice si ottiene:
Probabilità marginale di X=1: 0.30000000000000004
Probabilità marginale di Y=A: 0.4
Probabilità Marginale per variabili continue
Supponiamo di avere due variabili continue, ad esempio X e Y, e una funzione di densità congiunta . La probabilità marginale di una singola variabile, ad esempio X, è la probabilità di osservare eventi relativi solo a X, indipendentemente dalle realizzazioni di Y.
La probabilità marginale di X si ottiene integrando la funzione di densità congiunta rispetto alla variabile Y. Matematicamente, la probabilità marginale di X (indicata spesso come è data dall’integrazione della funzione di densità congiunta rispetto a Y:
In modo simile, la probabilità marginale di Y (indicata spesso come si ottiene integrando la funzione di densità congiunta rispetto a X:
Queste probabilità marginali forniscono informazioni sulla distribuzione di ciascuna variabile singolarmente, ignorando le informazioni sulla seconda variabile. Sono utili quando si desidera comprendere la distribuzione di una variabile alla volta.
Ricorda che in generale, il calcolo di queste probabilità marginali può coinvolgere l’uso dell’integrazione e può richiedere alcune tecniche specifiche a seconda della forma della funzione di densità congiunta.
Calcolo della Probabilità Marginale per variabili continue in Python
Per variabili continue, il concetto rimane lo stesso, ma la somma viene sostituita da un integrale. In Python, potresti utilizzare librerie come NumPy e SciPy per eseguire calcoli più complessi con variabili continue. SciPy inoltre fornisce funzioni di integrazione numerica.
Supponiamo di avere una funzione di densità congiunta (f(x, y)) e vogliamo calcolare le probabilità marginali di (X) e (Y).
import numpy as np
import matplotlib.pyplot as plt
from scipy import integrate
from mpl_toolkits.mplot3d import Axes3D
# Definiamo la funzione di densità congiunta f(x, y)
def joint_density(x, y):
return np.exp(-(x**2 + y**2) / 2) / (2 * np.pi)
# Calcoliamo la probabilità marginale di X
def marginal_x(x):
result, _ = integrate.quad(lambda y: joint_density(x, y), -np.inf, np.inf)
return result
# Calcoliamo la probabilità marginale di Y
def marginal_y(y):
result, _ = integrate.quad(lambda x: joint_density(x, y), -np.inf, np.inf)
return result
# Esempio di calcolo della probabilità marginale per alcuni valori specifici
x_value = 1.0
y_value = 0.5
marginal_x_value = marginal_x(x_value)
marginal_y_value = marginal_y(y_value)
print(f"Probabilità marginale di X per x = {x_value}: {marginal_x_value}")
print(f"Probabilità marginale di Y per y = {y_value}: {marginal_y_value}")
# Creiamo un grafico 3D della funzione di densità congiunta
fig = plt.figure(figsize=(12, 6))
ax1 = fig.add_subplot(121, projection='3d')
x_values = np.linspace(-3, 3, 100)
y_values = np.linspace(-3, 3, 100)
X, Y = np.meshgrid(x_values, y_values)
Z = joint_density(X, Y)
ax1.plot_surface(X, Y, Z, cmap='viridis')
ax1.set_title('Funzione di densità di probabilità congiunta')
ax1.set_xlabel('X')
ax1.set_ylabel('Y')
ax1.set_zlabel('Densità')
# Creiamo un grafico delle probabilità marginali
ax2 = fig.add_subplot(222)
marginal_x_values = [marginal_x(x) for x in x_values]
ax2.plot(x_values, marginal_x_values)
ax2.set_title('Probabilità marginale di X')
ax2.set_xlabel('X')
ax2.set_ylabel('Densità marginale')
ax3 = fig.add_subplot(224)
marginal_y_values = [marginal_y(y) for y in y_values]
ax3.plot(y_values, marginal_y_values)
ax3.set_title('Probabilità marginale di Y')
ax3.set_xlabel('Y')
ax3.set_ylabel('Densità marginale')
plt.tight_layout()
plt.show()
Eseguendo si ottiene il seguente risultato:
Funzione di densità congiunta:
La funzione di densità congiunta, spesso indicata come , descrive la probabilità che le variabili casuali e assumano valori specifici e . Nel nostro esempio, abbiamo usato una distribuzione gaussiana bidimensionale:
Probabilità marginale di X:
La probabilità marginale di , indicata come , si ottiene integrando la funzione di densità congiunta rispetto a su tutto il dominio di :
Nel nostro caso, usiamo l’integrazione numerica per calcolare questa quantità:
Probabilità marginale di Y:
Analogamente, la probabilità marginale di , indicata come , si ottiene integrando la funzione di densità congiunta rispetto a su tutto il dominio di :
Nel nostro caso, utilizziamo l’integrazione numerica per calcolare questa quantità:
Interpretazione:
Le probabilità marginali di e rappresentano le distribuzioni di probabilità di ciascuna variabile, ignorando l’altra. I grafici mostrano la forma della funzione di densità congiunta in uno spazio 3D, insieme ai grafici delle probabilità marginali su e . Questo fornisce una visualizzazione completa delle relazioni tra le variabili casuali e le distribuzioni marginali.
Questo esempio è molto generico e può essere adattato per modellare specifiche distribuzioni congiunte di variabili continue.