Skip to contents

Dos comprobaciones por corrida: anchor_identity (la prevalencia posterior reproduce la del ancla, por banda) e implied_incidence (la incidencia que implica la ecuación frente a la incidencia de referencia, que no entró al ajuste). Con una cascada y mortalidad subnacional reservada en los datos (las filas de mortalidad del año subnacional.anio_validacion en datos.csv), agrega la validación de la amplitud del gradiente subnacional (atributo amplitud).

Usage

dl_validar_ancla(ajuste, insumos, rutas = insumos$rutas, cascada = NULL)

Arguments

ajuste

Ajuste nacional de dl_ajustar().

insumos

Insumos de dl_insumos().

rutas

Rutas de dl_rutas(); se usa el ancla de incidencia. Por defecto, las de los insumos.

cascada

Cascada de dl_cascada() (opcional): con ella, la validación de la amplitud.

Value

Tabla (data.table) con una fila por comprobación (check), sexo (sex_id) y banda (age_group_id): valor_modelo (la mediana del modelo), valor_gbd (el ancla), err_rel (el error relativo), cubierto_ic95 (si el valor del modelo cae en el intervalo del 95 % del ancla) y nota (cómo se interpreta). Atributos:

  • resumen: por comprobación, el error relativo mediano (err_rel_mediano) y la fracción de bandas cubiertas (cobertura);

  • sin_incidencia_gbd: TRUE si el ancla de incidencia no trae filas de la causa (GBD no publica incidencia para algunas causas) y la comprobación se omitió;

  • amplitud (con una cascada por proxies y mortalidad subnacional reservada): por sexo, kappa, la pendiente con su intervalo (pendiente_lower, pendiente_upper), spearman, el número de celdas y de ubicaciones, y las mismas medidas estandarizadas por edad (*_std); o sin_amplitud: por qué no se calculó.

Details

  • anchor_identity: la mediana de la prevalencia de cada banda frente a la del ancla. El error relativo mediano de las bandas es una compuerta de la corrida: si pasa de 0.05 (dl_configuracion(), anchor.gate_err_mediano; en un proyecto, ancla.error_maximo), dl_exportar_corrida() no la escribe. Una banda fuera del intervalo del 95 % del ancla se revisa y la decisión se documenta, pero no es un error por sí sola.

  • implied_incidence: la incidencia poblacional que implica la ecuación, i (1 - p), frente a la incidencia del ancla (la medida 6 de las descargas; sin ella, un mensaje dice que la comprobación se omite). Es una validación externa: la incidencia del ancla no entra al ajuste.

  • amplitud: por sexo, la pendiente de log(observado / nacional) sobre log(predicho / nacional) en las ubicaciones subnacionales con mortalidad reservada (cercana a 1 si la cascada reproduce el tamaño del gradiente) y la correlación de rangos de Spearman (el orden de las ubicaciones). La mortalidad reservada nunca entra al ajuste. Con la mortalidad en exceso fija en 0 (mortalidad_exceso.prior: cero) el modelo no predice muertes y esta comprobación se omite; también con el reparto por razón (subnacional.modo: razon), que no tiene un gradiente por covariables que comparar. El atributo sin_amplitud dice el motivo, y el manifiesto de la corrida lo repite solo cuando la mortalidad reservada es de un año distinto del de la corrida.

Examples

# \donttest{
b <- dl_insumos(dl_proyecto(dl_ejemplo(), causa = 9100))
#> dl_insumos(): 25 fila(s) nacionales de la tabla datos quedan fuera del ajuste porque datos_en_ajuste está vacío en la configuración; las filas subnacionales se usan solo para validar la cascada
op <- dl_opciones_mcmc(simulaciones = 100, cadenas = 2, iteraciones = 2000, calentamiento = 1000)
f <- dl_ajustar(b, op, semilla = 1)
v <- dl_validar_ancla(f, b, cascada = dl_cascada(f, b, semilla = 1))
attr(v, "resumen")
#>                check err_rel_mediano cobertura
#>               <char>           <num>     <num>
#> 1:   anchor_identity      0.03251528         1
#> 2: implied_incidence      0.03346349         1
head(v[check == "anchor_identity", c("sex_id", "age_group_id", "valor_modelo", "valor_gbd",
                                     "err_rel", "cubierto_ic95")])
#>    sex_id age_group_id valor_modelo  valor_gbd    err_rel cubierto_ic95
#>     <int>        <int>        <num>      <num>      <num>        <lgcl>
#> 1:      1           13   0.01274434 0.01202830 0.05953006          TRUE
#> 2:      1           14   0.01897328 0.01801805 0.05301565          TRUE
#> 3:      1           15   0.02581334 0.02543882 0.01472219          TRUE
#> 4:      1           16   0.03340600 0.03206835 0.04171223          TRUE
#> 5:      1           17   0.04196389 0.04099928 0.02352743          TRUE
#> 6:      1           18   0.05226160 0.05542917 0.05714620          TRUE
attr(v, "amplitud")[, c("sex_id", "pendiente", "spearman")]
#>    sex_id pendiente  spearman
#>     <int>     <num>     <num>
#> 1:      1 0.9867002 0.8121212
#> 2:      2 1.0758874 0.8060606
# }