Notas de la instructora
This is a placeholder file. Please add content here.
Introducción a R y Rstudio
Introduccion a la visualizacion de datos en R con ggplot2.
Reporte e informes tecnicos en R Markdown
Limpieza de datos epidemiológicos
Construyendo un modelo deterministico simple
Solución 1
R
Lv <- 10 # Esperanza de vida de los mosquitos (en días)
Lh <- 50*365 # Esperanza de vida de los humanos (en días)
PIh <- 7 # Periodo infeccioso en humanos (en días)
PIv <- 6 # Periodo infeccioso en vectores (en días)
PEI <- 8.4 # Período extrínseco de incubación en mosquitos adultos (en días)
muv <- 1/Lv # Tasa per cápita de mortalidad de la población de mosquitos (1/Lv)
muh <- 1/Lh # Tasa per cápita de mortalidad de la población de humanos (1/Lh)
alphav <- muv # Tasa per cápita de natalidad de la población de mosquitos. Por ahora asumiremos que es la misma de tasa de mortalidad.
alphah <- muh # Tasa per cápita de natalidad de la población de humanos. Por ahora asumiremos que es la misma de tasa de mortalidad
gamma <- 1/PIh # Tasa de recuperación en humanos (1/PIh)
delta <- 1/PEI # Tasa extrínseca de incubación (1/PEI)
Nh <- 100000 # Número de humanos. Para este ejercicio proponemos 100.000 humanos. Puede cambiarlos si desea de acuerdo a su contexto.
m <- 2 # Densidad de mosquitos hembra por humano
Nv <- m*Nh # Número de mosquitos (m * Nh)
R0 <- 3 # Número reproductivo básico
ph <- 0.7 # Probabilidad de transmisión de un mosquito infeccioso a un humano susceptible después de una picadura.
pv <- 0.7 # Probabilidad de transmisión de un humano infeccioso a un mosquito susceptible después de una picadura.
b <- sqrt((R0 * muv*(muv+delta) * (muh+gamma)) /
(m * ph * pv * delta)) # Tasa de picadura
betah <- ph*b # Coeficiente de transmisión de un mosquito infeccioso a un humano susceptible después de una picadura (ph*b)
betav <- pv*b # Coeficiente de transmisión de un humano infeccioso a un mosquito susceptible después de una picadura (pv*b)
TIME <- 1 # Número de años que se va a simular. Para este ejercicio iniciaremos con el primer año de la epidemia.
Solución 3
R
# Modelo determinístico simple (fun)
modelo_zika <- function(tiempo, variable_estado, parametros) {
with(as.list(c(variable_estado, parametros))
, # entorno local para evaluar derivados
{
# Humanos
dSh <- alphah * Nh - betah * (Iv/Nh) * Sh - muh * Sh
dIh <- betah * (Iv/Nh) * Sh - (gamma + muh) * Ih
dRh <- gamma * Ih - muh * Rh
# Vectores
dSv <- alphav * Nv - betav * (Ih/Nh) * Sv - muv * Sv
dEv <- betav * (Ih/Nh) * Sv - (delta + muv)* Ev
dIv <- delta * Ev - muv * Iv
dx <- c(dSh, dIh, dRh, dSv, dEv, dIv)
list(c(dSh, dIh, dRh, dSv, dEv, dIv))
}
)
}
Solución 5
R
# Condiciones iniciales del sistema (y)
inicio <- c(Sh = Nh , # Número inicial de Sh en el tiempo 0
Ih = 0, # Número inicial de Ih en el tiempo 0
Rh = 0, # Número inicial de Rh en el tiempo 0
Sv = Nv, # Número inicial de Sv en el tiempo 0
Ev = 0, # Número inicial de Ev en el tiempo 0
Iv = 0) # Número inicial de Iv en el tiempo 0
Solución 6
R
# Resuelva las ecuaciones
salida <- ode(y = inicio, # Condiciones iniciales
times = tiempo, # Tiempo
fun = modelo_zika, # Modelo
parms = params # Parámetros
) %>%
as.data.frame() # Convertir a data frame
Solución
R
# Condiciones iniciales del sistema (y)
inicio <- c(Sh = Nh , # Número inicial de Sh en el tiempo 0
Ih = 0, # Número inicial de Ih en el tiempo 0
Rh = 0, # Número inicial de Rh en el tiempo 0
Sv = Nv-1, # Número inicial de Sv en el tiempo 0
Ev = 0, # Número inicial de Ev en el tiempo 0
Iv = 1) # Número inicial de Iv en el tiempo 0
R
# Resuelva las ecuaciones
salida <- ode(y = inicio, # Condiciones iniciales
times = tiempo, # Tiempo
fun = modelo_zika, # Modelo
parms = params # Parámetros
) %>%
as.data.frame() # Convertir a data frame