← Índice de Bioestadística abierta
Cálculo instantáneo en el navegador · verificable con R Activa

Entradas

La que esperas encontrar, de un estudio previo o de un piloto; de 0 a 1 o en porcentaje (85 = 85 %). No puede valer 0 ni 1.

Igual que la sensibilidad, entre 0 y 1 sin incluirlos.

La de la población donde se aplicará la prueba (entre los pacientes que se evaluarán), no la de la población general.

La mitad del ancho del intervalo que quieres obtener: 0.05 significa «±5 puntos», es decir, un IC de 10 puntos de ancho.

Proporción de participantes que esperas perder o excluir (0.1 = 10 %); déjalo vacío si no prevés pérdidas.

Ejemplo cargado

Ejemplo ilustrativo: se planea validar una prueba rápida de antígeno NS1 que se espera con 85 % de sensibilidad y 95 % de especificidad, en pacientes febriles donde la prevalencia de dengue ronda el 30 %, estimando ambas con una precisión de ±5 puntos y previendo 10 % de pérdidas (datos ficticios).

Datos ilustrativos, no reales.

Resultados

Cuantil normal (z)

1.960

Enfermos necesarios

196

valor exacto 195.91

Pacientes a reclutar para la sensibilidad

654

valor exacto 653.05

Sanos necesarios

73

valor exacto 72.99

Pacientes a reclutar para la especificidad

105

valor exacto 104.27

Pacientes a reclutar (total)

654

valor exacto 653.05

Total con pérdidas previstas

726

valor exacto 725.61

Interpretación

Para estimar una sensibilidad cercana a 85.0 % con un IC 95 % de ±0.05 se necesitan 196 pacientes con la enfermedad, es decir, 654 pacientes consecutivos si la prevalencia es de 30.0 %; para la especificidad hacen falta 73 personas sin la enfermedad (105 pacientes). Se recomienda reclutar 654.

Manda la sensibilidad: reunir 196 enfermos con una prevalencia de 30.0 % obliga a evaluar más pacientes (654) que los 105 que pide la especificidad. Con este diseño la especificidad quedará estimada con más precisión que ±0.05.

Previendo un 10 % de pérdidas o exclusiones, hay que reclutar 726 pacientes para terminar con 654 evaluables.

  • Las cifras dependen por entero de la sensibilidad, la especificidad y la prevalencia que se supongan: tómalas de estudios previos o de un piloto y documenta su origen en el protocolo.
  • Con una sensibilidad o una especificidad de 95 % o más, el intervalo de Wald en el que se apoya esta fórmula es demasiado estrecho y el tamaño resultante se queda corto: comprueba el resultado con un intervalo de Wilson o de Clopper-Pearson.
Pacientes a reclutar frente a la prevalencia esperada, con la prevalencia capturada marcadaPrevalencia capturada 30.0 %: Para la sensibilidad 654 personas, Para la especificidad 105 personas.Pacientes a reclutarPara la sensibilidadPara la especificidad05001,0001,5000 %20 %40 %60 %80 %100 %PrevalenciaTotal recomendado30.0 %
Pacientes a reclutar frente a la prevalencia esperada, con la prevalencia capturada marcada

Explicación

Un estudio de precisión diagnóstica estima dos proporciones distintas en dos grupos distintos: la sensibilidad se estima solo entre los enfermos y la especificidad solo entre los sanos. Por eso el tamaño de muestra no es un número, sino dos, y el estudio necesita el mayor de los dos.

El cálculo tiene dos pasos (Buderer 1996). Primero se pregunta cuántos enfermos hacen falta para que el intervalo de confianza de la sensibilidad tenga la semiamplitud deseada: es la fórmula clásica del intervalo de Wald para una proporción. Lo mismo, aparte, para la especificidad con los sanos.

Segundo: en una serie consecutiva nadie recluta por estado de enfermedad, sino que evalúa a todo el que llega. Si la prevalencia esperada es del 30 %, reunir 196 enfermos exige evaluar a unos 654 pacientes. La prevalencia es lo que convierte «enfermos necesarios» en «pacientes que hay que reclutar», y es la razón de que una enfermedad rara vuelva carísimo estimar bien la sensibilidad.

Las cifras dependen por completo de la sensibilidad, la especificidad y la prevalencia que se supongan: tómalas de un estudio previo, de un piloto o de la literatura, y decláralo en el protocolo. El intervalo que da esta fórmula es el de Wald; con valores cercanos a 1 conviene comprobar el resultado con un intervalo de Wilson o de Clopper-Pearson, que es lo que finalmente se reportará.

Ecuaciones

nD=z1−α/22 Sn (1−Sn)w2,NSn=nDPn_D=\frac{z_{1-\alpha/2}^{2}\,\Sn\,(1-\Sn)}{w^{2}},\qquad N_{\Sn}=\frac{n_D}{P}
nDn_D
personas con la enfermedad que hacen falta para estimar la sensibilidad
NSnN_{\Sn}
pacientes consecutivos que hay que evaluar para reunir esos enfermos
z1−α/2z_{1-\alpha/2}
cuantil normal del nivel de confianza (1.96 al 95 %)
ww
semiamplitud del intervalo de confianza (precisión absoluta)
PP
prevalencia esperada donde se aplicará la prueba
Buderer (1996): intervalo de Wald para la sensibilidad, estimada solo entre los enfermos.
nDˉ=z1−α/22 Sp (1−Sp)w2,NSp=nDˉ1−Pn_{\bar D}=\frac{z_{1-\alpha/2}^{2}\,\Sp\,(1-\Sp)}{w^{2}},\qquad N_{\Sp}=\frac{n_{\bar D}}{1-P}
nDˉn_{\bar D}
personas sin la enfermedad que hacen falta para estimar la especificidad
NSpN_{\Sp}
pacientes consecutivos que hay que evaluar para reunir esos sanos
La mitad del diseño que corresponde a la especificidad; el denominador es la proporción de sanos.
N=max⁡(NSn,  NSp),naj=⌈N1−L⌉N=\max\left(N_{\Sn},\;N_{\Sp}\right),\qquad n_{aj}=\left\lceil\frac{N}{1-L}\right\rceil
NN
tamaño del estudio: el mayor de los dos requisitos
LL
pérdidas previstas, como proporción
⌈  ⌉\lceil\;\rceil
techo: el redondeo hacia arriba se aplica una sola vez, al final
Ajuste por pérdidas de Lwanga y Lemeshow (1991).

Código R

# Sample size for sensitivity and specificity (Buderer 1996) - Bioestadistica abierta, UDG-CA-1190
# Runs as is in R, RStudio or webR; prints the results as JSON at the end.
library(jsonlite)

sn <- 0.85; sp <- 0.95     # expected sensitivity and specificity (strictly between 0 and 1)
prev <- 0.3             # expected prevalence where the test will be used
w <- 0.05                   # half-width of the confidence interval (absolute precision)
nivel <- 0.95           # confidence level
perdidas <- 0.1     # expected losses (0-0.5)

z <- qnorm(1 - (1 - nivel) / 2)

# Buderer (1996): each half of the design is a Wald interval for a proportion.
n_d  <- z^2 * sn * (1 - sn) / w^2   # diseased needed to estimate Sn with precision +-w
n_nd <- z^2 * sp * (1 - sp) / w^2   # non-diseased needed to estimate Sp with precision +-w

# In a consecutive series nobody recruits by disease status: the prevalence
# decides how many patients must be screened to reach each of those groups.
n_sn <- n_d / prev
n_sp <- n_nd / (1 - prev)

n_total <- max(n_sn, n_sp)               # the binding requirement of the two
n_ajustado <- n_total / (1 - perdidas)   # Lwanga & Lemeshow (1991)

# Values travel WITHOUT rounding: the interface takes the ceiling once, at the end.
res <- list(z = z, n_d = n_d, n_sn = n_sn, n_nd = n_nd, n_sp = n_sp,
            n_total = n_total, n_ajustado = n_ajustado)
cat(toJSON(res, auto_unbox = TRUE, digits = NA))

# Equivalent in RStudio: presize::prec_sens(sens = sn, prev = prev, conf.width = 2*w, conf.level = nivel, method = "wald"); presize::prec_spec(spec = sp, prev = prev, conf.width = 2*w, conf.level = nivel, method = "wald")

Este es el mismo código que valida la calculadora: cópialo y ejecútalo en R o RStudio para reproducir el resultado.

La verificación con R dentro del navegador llegará en una próxima versión; mientras tanto, copia el código y ejecútalo en RStudio.

Métodos para manuscrito

El tamaño de muestra se calculó para estimar la sensibilidad y la especificidad con una precisión absoluta de ±0.05 y una confianza del 95 %, suponiendo una sensibilidad de 85.0 %, una especificidad de 95.0 % y una prevalencia de 30.0 %, mediante la fórmula de Buderer [1]: 196 participantes con la enfermedad (654 pacientes consecutivos) y 73 sin ella (105 pacientes); se tomó el mayor de los dos requisitos, 654 pacientes. Se añadió un 10 % por pérdidas o exclusiones previstas, con lo que el reclutamiento previsto asciende a 726 pacientes. Los cálculos se realizaron con la calculadora «Muestra para una prueba diagnóstica» de Bioestadística abierta (Cuerpo Académico UDG-CA-1190, https://udgca1190.com.mx/herramientas/bioestadistica/muestra-prueba-diagnostica), verificada contra R.

Párrafo listo para la sección de Métodos; los números entre corchetes remiten a la lista de referencias.

Referencias

  1. 01 Buderer NM. Statistical methodology: I. Incorporating the prevalence of disease into the sample size calculation for sensitivity and specificity. Academic Emergency Medicine. 1996;3(9):895–900. doi:10.1111/j.1553-2712.1996.tb03538.x PMID: 8870764 Fuente original
  2. 02 Simel DL, Samsa GP, Matchar DB. Likelihood ratios with confidence: sample size estimation for diagnostic test studies. Journal of Clinical Epidemiology. 1991;44(8):763–770. doi:10.1016/0895-4356(91)90128-V PMID: 1941027 Complementaria
  3. 03 Bujang MA, Adnan TH. Requirements for minimum sample size for sensitivity and specificity analysis. Journal of Clinical and Diagnostic Research. 2016;10(10):YE01–YE06. doi:10.7860/JCDR/2016/18129.8744 PMID: 27891446 Lectura didáctica
  4. 04 Newcombe RG. Two-sided confidence intervals for the single proportion: comparison of seven methods. Statistics in Medicine. 1998;17(8):857–872. doi:10.1002/(SICI)1097-0258(19980430)17:8<857::AID-SIM777>3.0.CO;2-E PMID: 9595616 Complementaria
  5. 05 Altman DG. Practical Statistics for Medical Research. London: Chapman & Hall; 1991. Lectura didáctica