En cierta región del país se sabe por experiencia que la probabilidad de seleccionar un adulto mayor de 40 años de edad con cáncer es 0.05. Si la probabilidad de que un doctor diagnostique de forma correcta que una persona con cáncer tiene la enfermedad es 0.78, y la probabilidad de que diagnostique de forma incorrecta que una persona sin cáncer tiene la enfermedad es 0.06, ¿cuál es la probabilidad de que a un adulto mayor de 40 años se le diagnostique cáncer? Respuesta: Se hace el diagrama de árbol:
# Diagrama de arbol
grViz("
digraph arbol_cancer {
# Estilo general
graph [layout = dot, rankdir = LR]
node [shape=rectangle, style=filled, color=lightblue, fontname='Arial', fontsize=12]
# Nodos
Inicio [label='Adulto (>40 años)']
Cancer [label='Cáncer ']
NoCancer [label='No Cáncer']
DiagSi_C [label='Diagnóstico: Cáncer | C ']
DiagNo_C [label='Diagnóstico: No Cáncer | C ']
DiagSi_NoC [label='Diagnóstico: Cáncer | No C ']
DiagNo_NoC [label='Diagnóstico: No Cáncer | No C ']
# Conexiones
Inicio -> Cancer [label='0.05']
Inicio -> NoCancer [label='0.95']
Cancer -> DiagSi_C [label='0.78']
Cancer -> DiagNo_C [label='0.22']
NoCancer -> DiagSi_NoC [label='0.06']
NoCancer -> DiagNo_NoC [label='0.94']
}
")
Seguidamente se hace la tabla:
# Probabilidades del problema
P_cancer <- 0.05
P_no_cancer <- 0.95
P_diag_cancer_con_cancer <- 0.78
P_no_diag_cancer_con_cancer <- 0.22
P_diag_cancer_con_no_cancer <- 0.06
P_no_diag_cancer_con_no_cancer <- 0.94
# Crear tabla resumen
tabla <- data.frame(
Estado = c("Tiene Cáncer", "No Tiene Cáncer", "Total"),
`Diagnóstico: Cáncer` = c(
round(P_cancer * P_diag_cancer_con_cancer, 3),
round(P_no_cancer * P_diag_cancer_con_no_cancer, 3),
round(P_cancer * P_diag_cancer_con_cancer + P_no_cancer * P_diag_cancer_con_no_cancer, 3)
),
`Diagnóstico: No Cáncer` = c(
round(P_cancer * P_no_diag_cancer_con_cancer, 3),
round(P_no_cancer * P_no_diag_cancer_con_no_cancer, 3),
round(P_cancer * P_no_diag_cancer_con_cancer + P_no_cancer * P_no_diag_cancer_con_no_cancer, 3)
),
Total = c(P_cancer, P_no_cancer, 1)
)
# Mostrar tabla
flextable(tabla)
Estado | Diagnóstico..Cáncer | Diagnóstico..No.Cáncer | Total |
---|---|---|---|
Tiene Cáncer | 0.039 | 0.011 | 0.05 |
No Tiene Cáncer | 0.057 | 0.893 | 0.95 |
Total | 0.096 | 0.904 | 1.00 |
Respuesta:
La probabilidad de que un adulto mayor de 40 años sea diagnosticado con cáncer es de 0.096, es decir, 9.6 %. Este resultado se obtuvo con base en la tabla anterior, la cual muestra la distribución conjunta entre el diagnóstico médico y la presencia real de cáncer en la población.
Una cadena de tiendas de pintura produce y vende pintura de látex y semiesmaltada. De acuerdo con las ventas a largo plazo, la probabilidad de que un cliente compre pintura de látex es 0.75. De los que compran pintura de látex, 60 % también compra rodillos. Sin embargo, sólo 30 % de los que compran pintura semiesmaltada compra rodillos. Un comprador que se selecciona al azar adquiere un rodillo y una lata de pintura. ¿Cuál es la probabilidad de que sea pintura de látex?
#Diagrama en formato DOT
grViz( "
Digraph arbol_pintura {
#Estilo general
graph [layout = dot, rankdir = LR]
node [shape=rectangle, style=filled, color=lightblue, fontname='Arial', fontsize=12]
#Nodos
Inicio [label='Tipo_De_Pintura']
Latex [label='Latex']
SemiEsmaltada [label='SemiEsmaltada']
Rodillo [label='Compra Rodillo | L']
NRodillo [label='No Compra Rodillo | L']
Rodillon[label='Compra Rodillo | S']
NRodillon[label='No Compra Rodillo | S']
#Conexiones
Inicio -> Latex [label='0.75']
Inicio -> SemiEsmaltada [label='0.25']
Latex -> Rodillo [label='0.6']
Latex -> NRodillo [label='0.4']
SemiEsmaltada -> Rodillon [label='0.3']
SemiEsmaltada -> NRodillon [label='0.7']
}
")
De acuerdo a esto se hace la tabla:
#Probabilidad del problema
P_Latex <- 0.75
P_SemiEsmaltada <- 0.25
P_L_R <- 0.6
P_S_R <- 0.3
P_L_RN <- 0.4
P_S_RN <- 0.7
#Crear tabla
tabla <- data.frame(
Estado = c("Pintura tipo Latex","Pintura tipo SemiEsmaltada","Total"),
'Compra Rodillo'=c(
round(P_Latex * P_L_R, 3),
round(P_SemiEsmaltada * P_S_R, 3),
round(P_Latex * P_L_R + P_SemiEsmaltada * P_S_R, 3)
),
'No Compra Rodillo'=c(
round(P_Latex * P_L_RN, 3),
round(P_SemiEsmaltada * P_S_RN, 3),
round(P_Latex * P_L_RN + P_SemiEsmaltada * P_S_RN,3)
),
Total =c(P_Latex, P_SemiEsmaltada, 1)
)
#Mostrar tabla
flextable(tabla)
Estado | Compra.Rodillo | No.Compra.Rodillo | Total |
---|---|---|---|
Pintura tipo Latex | 0.450 | 0.300 | 0.75 |
Pintura tipo SemiEsmaltada | 0.075 | 0.175 | 0.25 |
Total | 0.525 | 0.475 | 1.00 |
Respuesta:
La probabilidad de que el comprador opte por llevar una pintura tipo Latex acompañada de un rodillo es de 0.450, es decir, del 45%.
Una empresa industrial grande usa tres moteles locales para ofrecer hospedaje nocturno a sus clientes. Se sabe por experiencia que a 20% de los clientes se le asigna habitaciones en el Ramada Inn, a 50% en el Sheraton y a 30% en el Lakeview Motor Lodge. Si hay una falla en la plomería en 5% de las habitaciones del Ramada Inn, en 4% de las habitaciones del Sheraton y en 8% de las habitaciones del Lakeview Motor Lodge, ¿cuál es la probabilidad de que:
a un cliente se le asigne una habitación en la que falle la plomería?
a una persona que ocupa una habitación en la que falla la plomería se le haya hospedado en el Lakeview Motor Lodge?
#Diagrama de arbol
grViz("
digraph arbol_hoteles {
rankdir=LR;
node [shape=rectangle, style=unfilled, color=blue]
# Ramas principales desde el nodo inicial
Inicio -> Ramada [label='Ramada Inn']
Inicio -> Sheraton [label='Sheraton']
Inicio -> Lakeview [label='Lakeview']
# Ramas de resultados para Ramada Inn
Ramada -> Falla_Ramada [label='Falla']
Ramada -> NoFalla_Ramada [label='No Falla']
# Ramas de resultados para Sheraton
Sheraton -> Falla_Sheraton [label='Falla']
Sheraton -> NoFalla_Sheraton [label='No Falla']
# Ramas de resultados para Lakeview
Lakeview -> Falla_Lakeview [label='Falla']
Lakeview -> NoFalla_Lakeview [label='No Falla']
# Etiquetas de los nodos
Inicio [label='Cliente']
Ramada [label='P(Ramada) = 0.20']
Sheraton [label='P(Sheraton) = 0.50']
Lakeview [label='P(Lakeview) = 0.30']
# Probabilidades condicionales de falla/no falla
Falla_Ramada [label='P(Falla | Ramada) = 0.05']
NoFalla_Ramada [label='P(No Falla | Ramada) = 0.95']
Falla_Sheraton [label='P(Falla | Sheraton) = 0.04']
NoFalla_Sheraton [label='P(No Falla | Sheraton) = 0.96']
Falla_Lakeview [label='P(Falla | Lakeview) = 0.08']
NoFalla_Lakeview [label='P(No Falla | Lakeview) = 0.92']
}
")
# Probabilidades de hospedaje en cada motel
prob_RamadaInn <- 0.20 # Probabilidad de hospedarse en Ramada Inn
prob_Sheraton <- 0.50 # Probabilidad de hospedarse en Sheraton
prob_Lakeview <- 0.30 # Probabilidad de hospedarse en Lakeview
# Probabilidades de falla en cada motel
prob_Falla_dado_RamadaInn <- 0.05
prob_Falla_dado_Sheraton <- 0.04
prob_Falla_dado_Lakeview <- 0.08
# Probabilidades conjuntas (falla y motel)
prob_RamadaInn_y_Falla <- prob_RamadaInn * prob_Falla_dado_RamadaInn
prob_Sheraton_y_Falla <- prob_Sheraton * prob_Falla_dado_Sheraton
prob_Lakeview_y_Falla <- prob_Lakeview * prob_Falla_dado_Lakeview
# Probabilidad de no falla y motel
prob_NoFalla_dado_RamadaInn <- prob_RamadaInn - prob_RamadaInn_y_Falla
prob_NoFalla_dado_Sheraton <- prob_Sheraton - prob_Sheraton_y_Falla
prob_NoFalla_dado_Lakeview <- prob_Lakeview - prob_Lakeview_y_Falla
# Probabilidad total de falla y no falla
prob_Falla_Total <- prob_RamadaInn_y_Falla + prob_Sheraton_y_Falla + prob_Lakeview_y_Falla
prob_NoFalla_Total <- 1 - prob_Falla_Total
tabla_moteles <- data.frame(
Motel = c("Ramada Inn", "Sheraton", "Lakeview", "Total"),
Falla = c(prob_RamadaInn_y_Falla, prob_Sheraton_y_Falla, prob_Lakeview_y_Falla, prob_Falla_Total),
No_Falla = c(prob_NoFalla_dado_RamadaInn, prob_NoFalla_dado_Sheraton, prob_NoFalla_dado_Lakeview, prob_NoFalla_Total),
Total = c(prob_RamadaInn, prob_Sheraton, prob_Lakeview, 1)
)
flextable(tabla_moteles)
Motel | Falla | No_Falla | Total |
---|---|---|---|
Ramada Inn | 0.010 | 0.190 | 0.2 |
Sheraton | 0.020 | 0.480 | 0.5 |
Lakeview | 0.024 | 0.276 | 0.3 |
Total | 0.054 | 0.946 | 1.0 |
Buscamos la probabilidad total de que ocurra una falla en la
plomería, considerando los tres moteles y sus respectivas
probabilidades.
Esta probabilidad se obtiene a partir de la tabla de
probabilidades conjuntas, donde se combinan:
La probabilidad de que un cliente sea asignado a cada motel, y La probabilidad de que falle la plomería en ese motel la cual es:
\[ P(F) = 0.054 \]
Respuesta:
La probabilidad de que a un cliente se le asigne una habitación en la que falle la plomería es:
\[ P(F) = 0.054 = 5.4\% \]
En este caso se busca una probabilidad condicional, ya que se desea conocer la probabilidad de que un cliente se haya hospedado en el Lakeview Motor Lodge sabiendo que ocurrió una falla en la plomería. Por ello, se aplica el teorema de Bayes, que permite determinar esta probabilidad a partir de la probabilidad conjunta del evento y la probabilidad total de que ocurra una falla. Esta información se obtiene a partir de los datos presentados en la tabla anterior, que muestra las probabilidades de hospedaje y fallas en cada motel.
Entonces aplicamos el teorema de Bayes con la siguiente formula:
\[ P(\text{Lakeview} \mid F) = \frac{P(\text{Lakeview} \cap F)}{P(F)} \]
Datos que tomamos de la tabla:
\[ P(\text{Lakeview} \cap F) = 0.024 \quad \text{y} \quad P(F) = 0.054 \]
Aplicamos teorema de Bayes: \[ P(\text{Lakeview} \mid F) = \frac{0.024}{0.054} = 0.4444 \]
Respuesta:
La probabilidad de que la persona que ocupa una habitación con falla esté hospedada en el Lakeview Motor Lodge es:
\[ P(\text{Lakeview} \mid F) = 0.444 = 44.4\% \]
La probabilidad de que un hombre casado vea cierto programa de televisión es 0.4 y la probabilidad de que lo vea una mujer casada es 0.5. La probabilidad probabilidad de que un hombre vea el programa, dado que su esposa lo ve, es 0.7. Calcule la probabilidad de que
para la realizacion de este ejercicio crearemos un diagrama de arbol para tener nocion e interpretacion del orden de los datos que se utilizaran posteriormente.
grViz("
digraph {
graph [rankdir=LR]
M [label='Mujer ve el programa (M)', shape=ellipse]
NM [label='Mujer NO ve el programa (¬M)', shape=ellipse]
MH [label='Hombre ve el programa dado que M (H|M)', shape=ellipse]
MNH [label='Hombre NO ve el programa dado que M (¬H|M)', shape=ellipse]
NMMH [label='Hombre ve el programa dado que ¬M (H|¬M)', shape=ellipse]
NMNH [label='Hombre NO ve el programa dado que ¬M (¬H|¬M)', shape=ellipse]
Inicio -> M [label='P(M)=0.5']
Inicio -> NM [label='P(¬M)=0.5']
M -> MH [label='P(H|M)=0.7']
M -> MNH [label='P(¬H|M)=0.3']
NM -> NMMH [label='P(H|¬M)=?']
NM -> NMNH [label='P(¬H|¬M)=?']
}
")
Seguidamente para este ejercicio realizaremos una tabla para la facil interpretracion de los datos dados
# Datos iniciales
P_H <- 0.4
P_M <- 0.5
P_H_int_M <- 0.35
# Cálculo de las demás probabilidades conjuntas
P_H_int_noM <- P_H - P_H_int_M
P_noH_int_M <- P_M - P_H_int_M
P_noH_int_noM <- 1 - P_H_int_M - P_H_int_noM - P_noH_int_M
# Crear tabla resumen con nombres de columnas limpios
tabla <- data.frame(
Estado = c("Esposo Ve (H)", "Esposo No Ve (H')", "Total"),
Esposa_Ve_M = c(
round(P_H_int_M, 3),
round(P_noH_int_M, 3),
round(P_M, 3)
),
Esposa_No_Ve_M = c(
round(P_H_int_noM, 3),
round(P_noH_int_noM, 3),
round(1-P_M, 3)
),
Total = c(
round(P_H, 3),
round(1-P_H, 3),
1
)
)
names(tabla) <- c("Estado", "Esposa Ve (M)", "Esposa No Ve (M')", "Total")
flextable(tabla) %>%
bold(part = "header") %>%
bg(i = 1, bg = "#f0f0f0") %>%
bg(i = 3, bg = "#e8e8e8") %>%
bg(j = 1, bg = "#f8f8f8") %>%
bold(j = 1) %>%
align(align = "center", part = "all") %>%
set_caption("Tabla de probabilidades conjuntas") %>%
width(width = 1.2)
Estado | Esposa Ve (M) | Esposa No Ve (M') | Total |
---|---|---|---|
Esposo Ve (H) | 0.35 | 0.05 | 0.4 |
Esposo No Ve (H') | 0.15 | 0.45 | 0.6 |
Total | 0.50 | 0.50 | 1.0 |
La probabilidad de que una pareja casada vea el programa es: 0.35
La probabilidad de que una esposa vea el programa dado que su esposo lo ve es: 0.875
La probabilidad de que al menos uno de los miembros de la pareja casada vea el programa es: 0.55