Saltar al contenido
🛠️ToolsShed

Calculadora de Distribución Binomial

Calcula probabilidades binomiales P(X=k), P(X≤k) y P(X≥k).

Acerca de esta herramienta

La Calculadora de Distribución Binomial calcula las probabilidades exactas de eventos discretos que tienen exactamente dos resultados posibles. Esta herramienta es esencial para estadísticos, científicos de datos y cualquiera que trabaje en control de calidad, ensayos médicos o cualquier escenario que implique experimentos independientes repetidos con probabilidad de éxito constante.

Para usar esta calculadora, ingresa el número de ensayos (n), la probabilidad de éxito en cada ensayo (p entre 0 y 1) y el número de éxitos que deseas analizar (k). La herramienta calcula instantáneamente tres probabilidades clave: la probabilidad exacta de obtener exactamente k éxitos, la probabilidad acumulativa de obtener k o menos éxitos, y la probabilidad de obtener k o más éxitos. Esta flexibilidad te permite responder tanto preguntas precisas como basadas en rangos sobre tu escenario binomial.

La distribución binomial se aplica a incontables situaciones del mundo real: predecir la cantidad de artículos defectuosos en un lote, determinar tasas de recuperación de pacientes en estudios médicos, analizar tasas de conversión de clientes o evaluar la calidad de fabricación. Comprender estas probabilidades te ayuda a tomar decisiones informadas basadas en resultados esperados en lugar de conjeturas.

Preguntas Frecuentes

Implementación de Código

import math

def binomial_pmf(n: int, k: int, p: float) -> float:
    """P(X = k) for Binomial(n, p)"""
    log_c = math.lgamma(n + 1) - math.lgamma(k + 1) - math.lgamma(n - k + 1)
    log_p = k * math.log(p) + (n - k) * math.log(1 - p) if 0 < p < 1 else (0 if p == k / n else float('-inf'))
    return math.exp(log_c + log_p)

def binomial_cdf(n: int, k: int, p: float) -> float:
    """P(X <= k)"""
    return sum(binomial_pmf(n, i, p) for i in range(k + 1))

# Example: 10 coin flips, p=0.5, exactly 6 heads
n, k, p = 10, 6, 0.5
print(f"P(X = {k}) = {binomial_pmf(n, k, p):.4f}")
print(f"P(X ≤ {k}) = {binomial_cdf(n, k, p):.4f}")
print(f"P(X ≥ {k}) = {1 - binomial_cdf(n, k - 1, p):.4f}")
print(f"Mean = {n * p:.2f}, Std Dev = {(n * p * (1 - p)) ** 0.5:.2f}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.