Oncología

Para estudiantes de medicina, Universidad CES


Teorema de Bayes - Primera parte: el concepto

El teorema de Bayes describe la probabilidad de un evento, basado en el conocimiento previo de las condiciones que podrían estar relacionadas con él. Eso suena convoluto, algo complicado. Pero es uno de los conceptos más importantes que debe dominar el médico contemporáneo. Voy a tratar de explicarlo con un ejemplo.

Primero, supongamos que en una población dada, el 40% tiene enfermedad metastásica. Segundo, supongamos que un test tiene una precisión del 100% para detectar las metástasis, y es normal en el 100% de los que no tienen metástasis. Si la población es de 1000, encontraremos que los 400 pacientes que tienen metástasis van a ser identificados por un test positivo. También muy importante, los 600 que no tienen metástasis, van a tener un test negativo. Esta situación es ideal, pues el test tiene un desempeño perfecto. Ello ocurre porque tanto la sensibilidad como la especificidad son del 100%. Recordemos, sensibilidad es la capacidad de un test de detectar la condición cuando la hay (verdaderos positivos). Especificidad es la capacidad de un test para identificar correctamente los que no tienen la condición (verdaderos negativos). Estos dos parámetros están disponibles para prácticamente todos los tests en medicina. Infortunadamente, en medicina, ningún test tiene 100% de sensibildad y 100% de especificidad.

Supongamos que el test sólo detecta el 90% de las personas enfermas, y adjudica como enfermas a 10% de quienes no tienen la condición. Dicho de otra manera, tiene sensibilidad y especificidad cada una del 90%. Nos encontramos con el siguiente escenario:

Verdaderos positivos: 90% de los 400 que tienen metástasis, o sea 360.
Falsos positivos: 10% de los 600 que no tienen metástasis, o sea 60.
Falsos negativos: 10% de los 400 que tienen metástasis, o sea 40.
Verdaderos positivos: 90% de los 600 que no tienen metástasis, o sea 540.

Vamos a suponer que nos interesa detectar los verdaderos positivos. O sea, la probabilidad de que el test sea positivo, en presencia de enfermedad metastásica. A eso lo llamamos la probabilidad condicionada y se denota P(A
B) dónde la A se refiere la presencia de metástasis, y B se refiere a un test positivo.

Bayes encontró en el siglo XVIII una fórmula para encontrar
P(AB). Antes de enunciarla, miremos qué debe tener. En el denominador, por supuesto, debe tener la P(B), que es la frecuencia del test positivo.

El numerador debe ser una función de P(A), la prevalencia de metástasis en el grupo. Pero estamos interesados, repito, en la proporción de tests positivos que realmente indican enfermedad. Esos los representamos así:
P(BA). Se lee la probabilidad de metástasis, dada la condición de un test positivo. Bayes conectó esos componentes en su fórmula, así:

P(AB) = P(BA)*P(A)/P(B).

Si la resolvemos con el ejercicio propuesto nos da:

P(AB) = (360/400 * 400/1000) / ((360 + 60)/1000)
P(AB) = 0.9 * 0.4 / 0.42
P(AB) = 0.85

La probabilidad condicionada (revisada) de metástasis pasa al 85% cuando el test es positivo.

Miremos ahora con detenimiento el numerador.
P(BA) es lo mismo que sensibilidad, y P(A) es la prevalencia (también conocida como probabilidad pre-test o probabilidad a priori)

P(AB) = sensibilidad * prevalencia / P(B).

Esto nos facilita mucho los cálculos, porque la sensibilidad es algo que está disponible, y la prevalencia es algo que es también estimable. El reto ahora es encontrar el P(B), pues ese número no nos lo dan así de simple. Recordemos que P(B) es la probabilidad de tener un test positivo. P(B) incluye los verdaderos positivos, que ya vimos es sensibilidad * prevalencia, más la probabilidad de falsos positivos, que se calcula así (1-especificidad)*(1-prevalencia).

P(B) = (sensibilidad * prevalencia) + (1-especificidad) * (1-prevalencia).

Al sustituir P(B) por su equivalente, queda:

P(AB) = sensibilidad * prevalencia / ((sensibilidad * prevalencia) +(1-especificidad) * (1-prevalencia)).

Como mencionamos, la sensibilidad es 0.9, la prevalencia es 0.4, la especificidad es 0.9, y la proporción de pacientes que no tienen metástasis es 1-40%, o sea, 60% (o 0.6). Vamos a resolverlo paso a paso:


P(AB) = 0.9 * 0.4 / ((0.9 * 0.4) + (1-0.9) * (1-0.4))
P(AB) = 0.9 * 0.4 / ((0.9 * 0.4) + (0.1) * (0.6))
P(AB) = 0.36 / ((0.36) + (0.06))
P(AB) = 0.36 / 0.42
P(AB) = 0.85

Se lee entonces que la probabilidad de metástasis dado un test positivo es de aproximadamente 85% cuando la prevalencia de metástasis es del 40%, y el test tiene una sensibilidad del 90% y una especificidad del 90%, respectivamente. Esto es lo que llamamos VALOR PREDICTIVO POSITIVO (VPP, o PPV por sus siglas en Inglés). En otras palabras, cuando el test es positivo la probabilidad de metástasis pasa del 40% que es la de la población en cuestión, a 85%. Eso es lo que llamamos la probabilidad revisada.

Solicito al lector un poco de paciencia, porque la magia no ha comenzado. Veamos qué implicaciones tiene un test negativo en ese mismo grupo. En vez de buscar la probabilidad de metástasis con el test negativo, se busca ahora la probabilidad de NO metástasis con el test negativo. Re-construyamos la ecuación de Bayes con ese objetivo:

P(AB) será entonces la probabilidad de no metástasis cuando el test es negativo. En el numerador se incluye la probabilidad de no metástasis P(A) que es 1-0.4, o 0.6. Y se calcula teniendo en cuenta que la probabilidad de un test verdaderamente negativo es la especificidad. En este caso, 0.9. El numerador completo se construye así: especificidad multiplicada por el número de pacientes que NO tienen metástasis (1-prevalencia).

En el denominador deben incluirse todos los resultados negativos del test, que incluyen el numerador (los verdaderos negativos), más todos los falsos negativos que se calculan multiplicando prevalencia * (1-sensibilidad).

La fórmula queda:

P(A
B) = especificidad * (1-prevalencia) / ((especificidad * (1-prevalencia) + (1-sensibilidad) * prevalencia))

Desarrollemos,

P(AB) = 0.9 * (1-0.4) / ((0.9 * (1-0.4) + (0.1 * 0.4))
P(AB) = 0.9 * 0.6 / ((0.9 * 0.6 + (0.1 * 0.4))
P(AB) = 0.54 / ((0.9 * 0.6 + 0.04)
P(AB) = 0.54 / (0.54 + 0.04)
P(AB) = 0.54 / 0.58
P(AB) = 0.54 / (0.54 + 0.04)
P(AB) = 0.93

Se concluye que la probabilidad (revisada) de no tener metástasis cuando el test es negativo (con los parámetros ya estipulados) pasa del 40% al 7% (1-0.93). A esto se le llama VALOR PREDICTIVO NEGATIVO (o VPN, o NPV por sus siglas en Inglés).

Observe que un test con estas características ayuda tanto si es positivo o negativo cuando la prevalencia de la condición está en el 40%. Si es positivo, la probabilidad de metástasis es 85%, y si es negativo se baja a 7%. Recapitulemos, con las dos fórmulas que se han derivado:

VPP =
sensibilidad * prevalencia / ((sensibilidad * prevalencia) +(1-especificidad) * (1-prevalencia))

VPN = especificidad * (1-prevalencia) / ((especificidad * (1-prevalencia) + (1-sensibilidad) * prevalencia))

Todo esto se puede lograr con 3 variables: sensibilidad, especificidad y prevalencia. Las dos primeras son relativamente objetivas y fáciles de obtener ¿Qué pasa con la prevalencia? ¿Qué sucede si la prevalencia de la enfermedad no es del 40%, sino del 4%? ¿Es decir, 10 veces menos frecuente?


VPP =
0.9 * 0.04 / ((0.9 * 0.04) + (1-0.9) * (1-0.04)) = 27%
VPN = 0.9 * (1-0.04) / ((0.9 * (1-0.04) + (0.1 * 0.04)) = 99.5%

La probabilidad revisada con un test positivo es 27%. Es decir, la probabilidad de metástasis pasa de 4% a 27%. Como se observa, si la probabilidad inicial de enfermedad es baja, un test positivo es más probable que sea un error que un verdadero positivo. Por otro lado, la probabilidad revisada si el test es negativo pasa de 4% a 0.5%. En otras palabras, un test negativo es bastante útil para descartar la enfermedad, en este escenario.

¿Qué pasa si la prevalencia de la condición es 90%? ¿Cómo nos cambian los números?

La probabilidad revisada en caso de un test positivo pasa de 90% a 98.78%. En caso de ser negativo, baja de 90% a 50%.

Para facilitar los cálculos, propongo este algoritmo en Python (
https://repl.it/@mauriciolema/Bayes2#main.py )

print("Teorema de Bayes")
sensibilidad = float(input("Sensibilidad 0-1: "))
especificidad = float(input("Especificidad 0-1: "))
p_priori = float(input("Prevalencia 0-1: "))
falsa_alarma = (1-especificidad)
ppv = sensibilidad * p_priori /((sensibilidad * p_priori) + (falsa_alarma *(1-p_priori)))
npv = (especificidad * (1-p_priori)) / (((especificidad * (1-p_priori)) + ((1-sensibilidad) * p_priori)))
print("Valor predictivo positivo (VPP) (%): ")
print (round(ppv*100,2))
print("Valor predictivo negativo (NPV) (%): ")
print (round(npv*100,2))


Veamos cómo se comportan los valores VPP y VPN a medida que vamos modificando la prevalencia progresivamente, en incrementos de 1% (
https://repl.it/@mauriciolema/PPVNPVrange0100 ).

print("Teorema de Bayes")
sensibilidad = float(input("Sensibilidad 0-1: "))
especificidad = float(input("Especificidad 0-1: "))
falsa_alarma = (1-especificidad)

for x in range(101):
p_priori = x/100
ppv = sensibilidad * p_priori /((sensibilidad * p_priori) + (falsa_alarma *(1-p_priori)))
npv = (especificidad * (1-p_priori)) / (((especificidad * (1-p_priori)) + ((1-sensibilidad) * p_priori)))
print("prevalencia: " + str(p_priori))
print("PPV: " + str(round(ppv*100,2)))
print("NPV: " + str(round(npv*100,2)))
print()

(Nota: justificar todas las líneas por debajo del for en el loop anidado).

A continuación, se observa el PPV de 0 a 100, con incrementos en la prevalencia del 10%, p de 0 a 1:

Sensibilidad 0-1: .9
Especificidad 0-1: .9
0.0 - 0.0
0.1 - 50.0
0.2 - 69.23
0.3 - 79.41
0.4 - 85.71
0.5 - 90.0
0.6 - 93.1
0.7 - 95.45
0.8 - 97.3
0.9 - 98.78
1.0 - 100.0

Y un ejercicio similar para el NPV:

Sensibilidad 0-1: .9
Especificidad 0-1: .9
0.0 - 100.0
0.1 - 98.78
0.2 - 97.3
0.3 - 95.45
0.4 - 93.1
0.5 - 90.0
0.6 - 85.71
0.7 - 79.41
0.8 - 69.23
0.9 - 50.0
1.0 - 0.0

Como se observa, aún con tests con muy buen comportamiento diagnóstico, la prevalencia es determinante. Y es ahí donde radica la verdadera importancia del teorema de Bayes, pues los exámenes son útiles dependiendo del contexto dónde se realizan. Si el diagnóstico es casi seguro, los exámenes son frecuentemente innecesarios. En este escenario, un test negativo, es probablemente un falso negativo. Por otro lado, si la prevalencia es poco común, un examen positivo probablemente indica un falso positivo. Los exámenes diagnósticos son útiles cuando la probabilidad a priori (prevalencia) se ubica cerca a la mitad. En ese punto, un examen positivo, permite establecer el diagnóstico con gran certidumbre; y un examen negativo, permite descartarlo, también con gran certidumbre.

Una analogía que me ha sido de utilidad, es considerar la Gestalt, el entorno, con la importancia que se merece. Si tu estás peleando con tu novio todo el tiempo, y lo ves con otra… lo más probable es que te esté siendo infiel. Y si la otra es bien bonita, la probabilidad se sube dramáticamente. En cambio, si tu relación con tu novio es PERFECTA, y lo ves hablando con otra; probablemente, le está preguntando algo. Y si la otra es bien poco atractiva, lo más probable es que efectivamente, sólo le esté pidiendo direcciones para llegar a ti (doy disculpas a los no incluidos en la analogía… ahora que somos tan políticamente correctos…).