Introducción

library(tidyverse)


#PARÁMETROS----------------------------------------------------------------------------------------------

## poblacion objetivo------------------------------------------------------------------------------------

porcentaje_seropositivos <- 0.75  # Porcentaje de pacientes seropositivos para CMV 0.83

trasplantes_2024_incucai <- 370

trasplantes_2025_incucai <- 400

trasplantes_2026_incucai <- 420


## costos de tratamientos---------------------------------------------------------------------

descuento_pls <- 0.5699629524  # Descuento de PSL: 0.5699629524

# Paso siguiente: cálculo de costos de tratamiento
parametros_tratamiento <- list(
  duracion_tratamiento = 14,  # Duración del tratamiento en días
  peso_promedio = 70,  # kg
  
  ganciclovir = list(
    costo_por_vial = 36192.51*descuento_pls,  # Costo por vial de 500 mg
    dosis = 5,  # mg/kg cada 12 horas
    presentacion = 500  # mg
  ),
  
  valganciclovir = list(
    costo_por_presentacion = 2299588.55*descuento_pls,  # Costo por presentación de 60 comprimidos de 450 mg
    dosis = 900,  # mg cada 12 horas
    presentacion = 450  # mg
  ),
  
  foscarnet = list(
    costo_por_presentacion = 278887.27*descuento_pls,  # Costo por presentación de 12 g
    dosis = 90,  # mg/kg cada 12 horas
    presentacion = 12000  # mg
  ),
  
  letermovir = list(
    dosis = 480,  # mg cada 24 horas
    duracion = 100,  # Días de tratamiento con Letermovir
    costo_240mg_28 = 10158973.27*descuento_pls,  # Costo por presentación de 28 ampollas de 240 mg
    costo_480mg_28 = 3703542.92*descuento_pls,  # Costo por presentación de 28 ampollas de 480 mg
    costo_240mg_1 = 374010*descuento_pls,  # Costo por presentación de 1 ampolla de 240 mg
    costo_480mg_1 = 374010*descuento_pls,  # Costo por presentación de 1 ampolla de 480 mg
    presentacion_240mg_28 = 240, # presentación de 28 ampollas de 240 mg
    presentacion_480mg_28 = 480, # presentación de 28 ampollas de 480 mg
    presentacion_240mg_1 = 240,  # presentación de 1 ampolla de 240 mg
    presentacion_480mg_1 = 480,  # presentación de 1 ampolla de 480 mg
    unidades_240mg_28 = 28, # unidades de 28 ampollas de 240 mg
    unidades_480mg_28 = 28, # unidades de 28 ampollas de 480 mg
    unidades_240mg_1 = 1,  # unidades de 1 ampolla de 240 mg
    unidades_480mg_1 = 1   # unidades de 1 ampolla de 480 mg
  )
)

proporciones <- list(
  proporcion_ganciclovir = 0.415,
  proporcion_valganciclovir = 0.50,
  proporcion_foscarnet = 0.1
)

# Proporciones de utilización de los antivirales (rama sin Letermovir)
proporciones_sin_letermovir <- list(
  proporcion_ganciclovir = 41.5,
  proporcion_valganciclovir = 50,
  proporcion_foscarnet = 10
)



## costos de seguimiento-----------------------------------------------------------------------

# Objetos con información de seguimiento (todo en términos de costos semanales)

semanas_pcr_semanal <- 14
semanas_pcr_quincenal <- 12
semanas_visita_especialista <- 14
semanas_hemograma <- 14
semanas_bioquímica <- 14

#ACA TENGO QUE AGREGAR FRECUENCIA DIFERENCIADA PARA RAMA LETERMO RAMA SIN LETERMO
seguimiento_pcr_semanal <- list(
  frecuencia_semanal = 1,
  costo_unitario = 130000  # Costo por PCR
)

seguimiento_pcr_quincenal <- list(
  frecuencia_semanal = 0.5,
  costo_unitario = 130000  # Costo por PCR
)

seguimiento_visita_especialista <- list(
  frecuencia_semanal = 1,
  costo_unitario = 20000  # Costo por visita al especialista
)

seguimiento_hemograma <- list(
  frecuencia_semanal = 1,
  costo_unitario = 4000  # Costo por hemograma completo
)

seguimiento_bioquimica <- list(
  frecuencia_semanal = 0,
  costo_unitario = 25000  # Costo por bioquímica
)



## costos eventos adversos------------------------------------------------------

# Incorporación de eventos adversos
eventos_adversos <- list(
  neutropenia = list(
    costo_unitario = 10000000,
    probabilidad_solo_msc = 0.038,
    probabilidad_letermovir = 0.036
  ),
  infecciones_oportunistas = list(
    costo_unitario = 10000000,
    probabilidad_solo_msc = 0.646,
    probabilidad_letermovir = 0.724
  ),
  enfermedad_renal_aguda = list(
    costo_unitario = 10000000,
    probabilidad_solo_msc = 0.13,
    probabilidad_letermovir = 0.097
  ),
  eich = list(
    costo_unitario = 10000000,
    probabilidad_solo_msc = 0.385,
    probabilidad_letermovir = 0.391
  ),
  rehospitalizaciones = list(
    costo_unitario = 10000000,
    probabilidad_solo_msc = 0.028,
    probabilidad_letermovir = 0.076
  ),
  enfermedad_cmv = list(
    costo_unitario = 10000000,
    probabilidad_solo_msc = 0.018,
    probabilidad_letermovir = 0.015
  )
)

## curvas-----------------------------------------------------------------------

# Incorporación de las curvas de sobrevida y de infección clínicamente significativa (ICS)
curvas_sobrevida <- data.frame(
  semana = c(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52),
  
  muertes_placebo = c(1,1,0.9838,0.9838,0.9722,0.9722,0.9665,0.9665,0.9644,0.9644,0.9555,0.9512,0.9512,0.9458,0.9458,0.9283,0.9198,0.9198,0.9,0.9,0.8944,0.8798,0.8798,0.8611,0.8611,0.8385,0.8255,0.8255,0.8124,0.802,0.802,0.794,0.794,0.7865,0.7753,0.7753,0.7698,0.7698,0.761,0.76,0.76,0.7557,0.7557,0.7532,0.7531,0.7531,0.7529,0.7529,0.7468,0.7443,0.7443,0.7442,0.7442),
  
  muertes_letermovir = c(1,1,0.994641867383425,0.994641867383425,0.994372279189849,0.994372279189849,0.984790561553868,0.984790561553868,0.980796470968477,0.980796470968477,0.977622543761072,0.966138728832199,0.966138728832199,0.960701634753246,0.960701634753246,0.954122955970329,0.945405157542472,0.945405157542472,0.937237178294485,0.937237178294485,0.93337611595547,0.917693941249273,0.917693941249273,0.903890315407629,0.903890315407629,0.898150704204062,0.89566418981472,0.89566418981472,0.891024216970891,0.872822037690295,0.872822037690295,0.860347141533334,0.860347141533334,0.853599528500008,0.847676644236485,0.847676644236485,0.842257760887841,0.842257760887841,0.829222863714347,0.817445423368886,0.817445423368886,0.816745821314118,0.816745821314118,0.816550220174229,0.80544987196694,0.80544987196694,0.798060803223767,0.798060803223767,0.794887014859588,0.790659406400661,0.790659406400661,0.790417986995783,0.790329383041617)
)


curvas_sobrevida_sin_infeccion <- data.frame(
  semana = c(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52),
  
  ics_placebo = c(1,0.99972783358922,0.997850230212919,0.990501164782857,0.98128399809285,0.919958703562664,0.822990244079353,0.753640638789154,0.722111980428813,0.644415430554045,0.632316638257233,0.616084091925677,0.607682152830668,0.59010529624391,0.588290477399389,0.578645051318319,0.573671103374074,0.573805534399594,0.573805534399594,0.573805534399594,0.573671103374074,0.573267810297514,0.565336379791826,0.562834129566803,0.554632309384785,0.548058555855586,0.547849143888748,0.54046135703314,0.535308485976803,0.530155614920467,0.52500274386413,0.519849872807794,0.514697001751458,0.509544130695121,0.504391259638785,0.499238388582448,0.494085517526112,0.488932646469776,0.483779775413439,0.478626904357103,0.473474033300766,0.46832116224443,0.463168291188094,0.458015420131757,0.452862549075421,0.447709678019084,0.442556806962748,0.437403935906412,0.432251064850075,0.427098193793739,0.421945322737402,0.416792451681066,0.41163958062473),
  
  ics_letermovir = c(1,0.998007108403148,0.993931726951959,0.985579693500486,0.9829392996992,0.972227299653042,0.965235072957845,0.961302965461381,0.959353715591339,0.952800203097233,0.947414560137332,0.939390708301599,0.939390708301599,0.934282329331834,0.91966295530652,0.918251429538558,0.918318645051318,0.918049783000278,0.902993508142023,0.87966972521428,0.864747881381545,0.856211511261017,0.827812957119888,0.811849272839372,0.812118134890413,0.803884234577304,0.800708301599391,0.796725782468357,0.792560101065052,0.788394419661747,0.784228738258441,0.780063056855136,0.775897375451831,0.771731694048526,0.767566012645221,0.763400331241915,0.75923464983861,0.755068968435305,0.750903287032,0.746737605628695,0.742571924225389,0.738406242822084,0.734240561418779,0.730074880015474,0.725909198612169,0.721743517208863,0.717577835805558,0.713412154402253,0.709246472998948,0.705080791595643,0.700915110192338,0.696749428789032,0.692583747385727)
)



## tipo de cambio---------------------------------------------------------------

#traigo el valor del dolar

tipo_de_cambio <- 1005

## cuota de mercado-------------------------------------------------------------

# mundo letermovir

## cuotas letermo

cuota_letermo_2025 <- 0.35
cuota_letermo_2026 <- 0.70
cuota_letermo_2027 <- 1

cuota_sinletermo_2025 <- 0.65
cuota_sinletermo_2026 <- 0.30
cuota_sinletermo_2027 <- 0


## cuotas sin letermo



#POBLACIÓN OBJETIVO--------------------------------------------

poblacion_objetivo_2025 <- trasplantes_2024_incucai*porcentaje_seropositivos
poblacion_objetivo_2026 <- trasplantes_2025_incucai*porcentaje_seropositivos
poblacion_objetivo_2027 <- trasplantes_2026_incucai*porcentaje_seropositivos

# Costos semanales ---------------------------------------------------------------------------

## costos tratamientos -----------------------------------------------------------------------
costo_ganciclovir <- (parametros_tratamiento$ganciclovir$dosis * parametros_tratamiento$peso_promedio * 2 / parametros_tratamiento$ganciclovir$presentacion) *
  parametros_tratamiento$ganciclovir$costo_por_vial * parametros_tratamiento$duracion_tratamiento  # Dos dosis al día durante dos semanas

costo_valganciclovir <- (parametros_tratamiento$valganciclovir$dosis * 2 / parametros_tratamiento$valganciclovir$presentacion) *
  (parametros_tratamiento$valganciclovir$costo_por_presentacion / 60) * parametros_tratamiento$duracion_tratamiento  # Dos dosis al día durante dos semanas

costo_foscarnet <- (parametros_tratamiento$foscarnet$dosis * parametros_tratamiento$peso_promedio * 2 / parametros_tratamiento$foscarnet$presentacion) *
  parametros_tratamiento$foscarnet$costo_por_presentacion * parametros_tratamiento$duracion_tratamiento  # Dos dosis al día durante dos semanas

# Cálculo de costo para cada presentación de Letermovir por semana
costo_letermovir_240mg_28_semana <- (parametros_tratamiento$letermovir$dosis / parametros_tratamiento$letermovir$presentacion_240mg_28 ) * (parametros_tratamiento$letermovir$costo_240mg_28 / parametros_tratamiento$letermovir$unidades_240mg_28) * 7
costo_letermovir_480mg_28_semana <- (parametros_tratamiento$letermovir$dosis / parametros_tratamiento$letermovir$presentacion_480mg_28) * (parametros_tratamiento$letermovir$costo_480mg_28 / parametros_tratamiento$letermovir$unidades_480mg_28) * 7
costo_letermovir_240mg_1_semana <- (parametros_tratamiento$letermovir$dosis / parametros_tratamiento$letermovir$presentacion_240mg_1) * parametros_tratamiento$letermovir$costo_240mg_1 * 7
costo_letermovir_480mg_1_semana <- (parametros_tratamiento$letermovir$dosis / parametros_tratamiento$letermovir$presentacion_480mg_1) * parametros_tratamiento$letermovir$costo_480mg_1 * 7

## costos de segumiento----------------------------------------------------------------------

# Cálculo de costos por seguimiento

costo_pcr_total <- seguimiento_pcr_semanal$frecuencia_semanal * seguimiento_pcr_semanal$costo_unitario * semanas_pcr_semanal + seguimiento_pcr_quincenal$frecuencia_semanal * seguimiento_pcr_quincenal$costo_unitario * semanas_pcr_quincenal

costo_visita_especialista_total <- seguimiento_visita_especialista$frecuencia_semanal * seguimiento_visita_especialista$costo_unitario * semanas_visita_especialista

costo_hemograma_total  <- seguimiento_hemograma$frecuencia_semanal  * seguimiento_hemograma$costo_unitario  * semanas_hemograma

costo_bioquimica_total <- seguimiento_bioquimica$frecuencia_semanal * seguimiento_bioquimica$costo_unitario * semanas_bioquímica


## Curvas de pacientes---------------------------------------------------

# mungo con letermovir

# con letermovir

flujo_pacientes_costos_2025_con <- data.frame(
  semana = curvas_sobrevida$semana,
  pacientes_vivos_letermovir = poblacion_objetivo_2025 * curvas_sobrevida$muertes_letermovir * cuota_letermo_2025,
  pacientes_libres_infeccion_letermovir = poblacion_objetivo_2025 * curvas_sobrevida_sin_infeccion$ics_letermovir* cuota_letermo_2025,
  pacientes_vivos_placebo = poblacion_objetivo_2025 * curvas_sobrevida$muertes_placebo * cuota_letermo_2025,
  pacientes_libres_infeccion_placebo = poblacion_objetivo_2025 * curvas_sobrevida_sin_infeccion$ics_placebo * cuota_letermo_2025
)

flujo_pacientes_costos_2026_con <- data.frame(
  semana = curvas_sobrevida$semana,
  pacientes_vivos_letermovir = poblacion_objetivo_2026 * curvas_sobrevida$muertes_letermovir * cuota_letermo_2026,
  pacientes_libres_infeccion_letermovir = poblacion_objetivo_2026 * curvas_sobrevida_sin_infeccion$ics_letermovir * cuota_letermo_2026,
  pacientes_vivos_placebo = poblacion_objetivo_2026 * curvas_sobrevida$muertes_placebo * cuota_letermo_2026,
  pacientes_libres_infeccion_placebo = poblacion_objetivo_2026 * curvas_sobrevida_sin_infeccion$ics_placebo * cuota_letermo_2026
)

flujo_pacientes_costos_2027_con <- data.frame(
  semana = curvas_sobrevida$semana,
  pacientes_vivos_letermovir = poblacion_objetivo_2027 * curvas_sobrevida$muertes_letermovir * cuota_letermo_2027,
  pacientes_libres_infeccion_letermovir = poblacion_objetivo_2027 * curvas_sobrevida_sin_infeccion$ics_letermovir * cuota_letermo_2027,
  pacientes_vivos_placebo = poblacion_objetivo_2027 * curvas_sobrevida$muertes_placebo * cuota_letermo_2027,
  pacientes_libres_infeccion_placebo = poblacion_objetivo_2027 * curvas_sobrevida_sin_infeccion$ics_placebo * cuota_letermo_2027
)

# sin letermovir


flujo_pacientes_costos_2025_sin <- data.frame(
  semana = curvas_sobrevida$semana,
  pacientes_vivos_letermovir = poblacion_objetivo_2025 * curvas_sobrevida$muertes_letermovir * cuota_sinletermo_2025,
  pacientes_libres_infeccion_letermovir = poblacion_objetivo_2025 * curvas_sobrevida_sin_infeccion$ics_letermovir* cuota_sinletermo_2025,
  pacientes_vivos_placebo = poblacion_objetivo_2025 * curvas_sobrevida$muertes_placebo * cuota_sinletermo_2025,
  pacientes_libres_infeccion_placebo = poblacion_objetivo_2025 * curvas_sobrevida_sin_infeccion$ics_placebo * cuota_sinletermo_2025
)


flujo_pacientes_costos_2026_sin <- data.frame(
  semana = curvas_sobrevida$semana,
  pacientes_vivos_letermovir = poblacion_objetivo_2026 * curvas_sobrevida$muertes_letermovir * cuota_sinletermo_2026,
  pacientes_libres_infeccion_letermovir = poblacion_objetivo_2026 * curvas_sobrevida_sin_infeccion$ics_letermovir * cuota_sinletermo_2026,
  pacientes_vivos_placebo = poblacion_objetivo_2026 * curvas_sobrevida$muertes_placebo * cuota_sinletermo_2026,
  pacientes_libres_infeccion_placebo = poblacion_objetivo_2026 * curvas_sobrevida_sin_infeccion$ics_placebo * cuota_sinletermo_2026
)

flujo_pacientes_costos_2027_sin <- data.frame(
  semana = curvas_sobrevida$semana,
  pacientes_vivos_letermovir = poblacion_objetivo_2027 * curvas_sobrevida$muertes_letermovir * cuota_sinletermo_2027,
  pacientes_libres_infeccion_letermovir = poblacion_objetivo_2027 * curvas_sobrevida_sin_infeccion$ics_letermovir * cuota_sinletermo_2027,
  pacientes_vivos_placebo = poblacion_objetivo_2027 * curvas_sobrevida$muertes_placebo * cuota_sinletermo_2027,
  pacientes_libres_infeccion_placebo = poblacion_objetivo_2027 * curvas_sobrevida_sin_infeccion$ics_placebo * cuota_sinletermo_2027
)

#mundo sin letermovir


flujo_pacientes_costos_2025 <- data.frame(
  semana = curvas_sobrevida$semana,
  pacientes_vivos_letermovir = poblacion_objetivo_2025 * curvas_sobrevida$muertes_letermovir,
  pacientes_libres_infeccion_letermovir = poblacion_objetivo_2025 * curvas_sobrevida_sin_infeccion$ics_letermovir,
  pacientes_vivos_placebo = poblacion_objetivo_2025 * curvas_sobrevida$muertes_placebo * cuota_letermo_2025,
  pacientes_libres_infeccion_placebo = poblacion_objetivo_2025 * curvas_sobrevida_sin_infeccion$ics_placebo
)


flujo_pacientes_costos_2026 <- data.frame(
  semana = curvas_sobrevida$semana,
  pacientes_vivos_letermovir = poblacion_objetivo_2026 * curvas_sobrevida$muertes_letermovir ,
  pacientes_libres_infeccion_letermovir = poblacion_objetivo_2026 * curvas_sobrevida_sin_infeccion$ics_letermovir,
  pacientes_vivos_placebo = poblacion_objetivo_2026 * curvas_sobrevida$muertes_placebo,
  pacientes_libres_infeccion_placebo = poblacion_objetivo_2026 * curvas_sobrevida_sin_infeccion$ics_placebo 
)

flujo_pacientes_costos_2027 <- data.frame(
  semana = curvas_sobrevida$semana,
  pacientes_vivos_letermovir = poblacion_objetivo_2027 * curvas_sobrevida$muertes_letermovir,
  pacientes_libres_infeccion_letermovir = poblacion_objetivo_2027 * curvas_sobrevida_sin_infeccion$ics_letermovir,
  pacientes_vivos_placebo = poblacion_objetivo_2027 * curvas_sobrevida$muertes_placebo,
  pacientes_libres_infeccion_placebo = poblacion_objetivo_2027 * curvas_sobrevida_sin_infeccion$ics_placebo 
)




# MUNDO CON LETERMOVIR----------------------------------------------------------



#año 2025-----------------------------------------------------------------------


# Cálculo de la diferencia de pacientes entre semanas para cada variable del flujo de pacientes
flujo_pacientes_costos_2025_con <- flujo_pacientes_costos_2025_con %>%
  mutate(
    dif_pacientes_vivos_letermovir = abs(c(0, diff(pacientes_vivos_letermovir))),
    dif_pacientes_libres_infeccion_letermovir = abs(c(0, diff(pacientes_libres_infeccion_letermovir))),
    dif_pacientes_vivos_placebo = abs(c(0, diff(pacientes_vivos_placebo))),
    dif_pacientes_libres_infeccion_placebo = abs(c(0, diff(pacientes_libres_infeccion_placebo)))
  )

# Cálculo de la diferencia de pacientes entre semanas para cada variable del flujo de pacientes
flujo_pacientes_costos_2025_sin <- flujo_pacientes_costos_2025_sin %>%
  mutate(
    dif_pacientes_vivos_letermovir = abs(c(0, diff(pacientes_vivos_letermovir))),
    dif_pacientes_libres_infeccion_letermovir = abs(c(0, diff(pacientes_libres_infeccion_letermovir))),
    dif_pacientes_vivos_placebo = abs(c(0, diff(pacientes_vivos_placebo))),
    dif_pacientes_libres_infeccion_placebo = abs(c(0, diff(pacientes_libres_infeccion_placebo)))
  )



## costos rama con letermovir---------------------------------------------------

### tratamiento letermovir------------------------------------------------------

flujo_pacientes_costos_2025_con$flujo_pacientes_letermovir <- c(0,flujo_pacientes_costos_2025_con$pacientes_libres_infeccion_letermovir[1:14], rep(0, 38))

costo_letermovir_2025 <- flujo_pacientes_costos_2025_con$flujo_pacientes_letermovir * costo_letermovir_240mg_28_semana

flujo_pacientes_costos_2025_con$costo_trat_letermovir <- costo_letermovir_2025

### tratamiento antivirales-----------------------------------------------------

flujo_pacientes_costos_2025_con <- flujo_pacientes_costos_2025_con %>%
  mutate(
    costo_tratamiento_cmv_ics_letermovir = dif_pacientes_libres_infeccion_letermovir * (proporciones$proporcion_ganciclovir *costo_ganciclovir + proporciones$proporcion_valganciclovir *costo_valganciclovir + proporciones$proporcion_foscarnet *costo_foscarnet)*cuota_letermo_2025
  )

# armo una variable con los costos de los tratamientos

flujo_pacientes_costos_2025_con <- flujo_pacientes_costos_2025_con %>%
  mutate(
    costo_tratamientos_con_letermovir_flujo = costo_tratamiento_cmv_ics_letermovir+costo_trat_letermovir
  )

### seguimiento-----------------------------------------------------------------


flujo_pacientes_costos_2025_con <- flujo_pacientes_costos_2025_con %>%
  mutate(
    costo_pcr_letermovir = ifelse(semana <= semanas_pcr_semanal, pacientes_vivos_letermovir * seguimiento_pcr_semanal$costo_unitario, 
                                  pacientes_vivos_letermovir * seguimiento_pcr_quincenal$costo_unitario * seguimiento_pcr_quincenal$frecuencia_semanal),
    costo_visita_especialista_letermovir = pacientes_vivos_letermovir * seguimiento_visita_especialista$costo_unitario,
    costo_hemograma_letermovir = pacientes_vivos_letermovir * seguimiento_hemograma$costo_unitario,
    costo_bioquimica_letermovir = pacientes_vivos_letermovir * seguimiento_bioquimica$costo_unitario,
    costo_total_seguimiento_letermovir = costo_pcr_letermovir + costo_visita_especialista_letermovir + costo_hemograma_letermovir + costo_bioquimica_letermovir
  )

### eventos adversos------------------------------------------------------------



costo_neutropenia_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$neutropenia$probabilidad_letermovir * eventos_adversos$neutropenia$costo_unitario*cuota_letermo_2025

costo_infecciones_oportunistas_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$infecciones_oportunistas$probabilidad_letermovir * eventos_adversos$infecciones_oportunistas$costo_unitario*cuota_letermo_2025

costo_enfermedad_renal_aguda_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$enfermedad_renal_aguda$probabilidad_letermovir * eventos_adversos$enfermedad_renal_aguda$costo_unitario*cuota_letermo_2025

costo_eich_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$eich$probabilidad_letermovir * eventos_adversos$eich$costo_unitario*cuota_letermo_2025

costo_rehospitalizacion_letermovir_2025 <-  poblacion_objetivo_2025 * eventos_adversos$rehospitalizaciones$probabilidad_letermovir * eventos_adversos$rehospitalizaciones$costo_unitario*cuota_letermo_2025

costo_enfermedad_cmv_letermovir_2025 <-  poblacion_objetivo_2025 * eventos_adversos$enfermedad_cmv$probabilidad_letermovir * eventos_adversos$enfermedad_cmv$costo_unitario*cuota_letermo_2025

costo_eventos_adversos_letermovir_2025 <- costo_neutropenia_letermovir_2025 + costo_infecciones_oportunistas_letermovir_2025 + costo_enfermedad_renal_aguda_letermovir_2025 + costo_eich_letermovir_2025 + costo_rehospitalizacion_letermovir_2025 + costo_enfermedad_cmv_letermovir_2025

# armo la variable de eventos adversos en el flujo de pacientes

flujo_pacientes_costos_2025_con <- flujo_pacientes_costos_2025_con %>%
  mutate(
    costo_total_eventos_adversos_con_letermovir_flujo = costo_eventos_adversos_letermovir_2025/(nrow(flujo_pacientes_costos_2025_con)-1)
  )


## costos rama sin letermovir---------------------------------------------------

### tratamiento antivirales-----------------------------------------------------

# Cálculo del costo del tratamiento antiviral para los pacientes que se enferman en la rama sin Letermovir
flujo_pacientes_costos_2025_sin <- flujo_pacientes_costos_2025_sin %>%
  mutate(
    costo_tratamiento_cmv_ics_sin_letermovir = dif_pacientes_libres_infeccion_placebo * (
      proporciones_sin_letermovir$proporcion_ganciclovir * costo_ganciclovir +
        proporciones_sin_letermovir$proporcion_valganciclovir * costo_valganciclovir +
        proporciones_sin_letermovir$proporcion_foscarnet * costo_foscarnet
    )*cuota_sinletermo_2025
  )

### seguimiento-----------------------------------------------------------------

flujo_pacientes_costos_2025_sin <- flujo_pacientes_costos_2025_sin %>%
  mutate(
    costo_pcr_sin_letermovir = ifelse(semana <= semanas_pcr_semanal, pacientes_vivos_placebo * seguimiento_pcr_semanal$costo_unitario, 
                                      pacientes_vivos_placebo * seguimiento_pcr_quincenal$costo_unitario * seguimiento_pcr_quincenal$frecuencia_semanal),
    costo_visita_especialista_sin_letermovir = pacientes_vivos_placebo * seguimiento_visita_especialista$costo_unitario,
    costo_hemograma_sin_letermovir = pacientes_vivos_placebo * seguimiento_hemograma$costo_unitario,
    costo_bioquimica_sin_letermovir = pacientes_vivos_placebo * seguimiento_bioquimica$costo_unitario,
    costo_total_seguimiento_sin_letermovir = costo_pcr_sin_letermovir + costo_visita_especialista_sin_letermovir + costo_hemograma_sin_letermovir + costo_bioquimica_sin_letermovir
  )

### eventos adversos------------------------------------------------------------

# Cálculo del costo de los eventos adversos para el año 2025 (rama sin Letermovir)
costo_neutropenia_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$neutropenia$probabilidad_solo_msc * eventos_adversos$neutropenia$costo_unitario*cuota_sinletermo_2025

costo_infecciones_oportunistas_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$infecciones_oportunistas$probabilidad_solo_msc * eventos_adversos$infecciones_oportunistas$costo_unitario*cuota_sinletermo_2025

costo_enfermedad_renal_aguda_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$enfermedad_renal_aguda$probabilidad_solo_msc * eventos_adversos$enfermedad_renal_aguda$costo_unitario*cuota_sinletermo_2025

costo_eich_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$eich$probabilidad_solo_msc * eventos_adversos$eich$costo_unitario*cuota_sinletermo_2025

costo_rehospitalizaciones_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$rehospitalizaciones$probabilidad_solo_msc * eventos_adversos$rehospitalizaciones$costo_unitario*cuota_sinletermo_2025

costo_enfermedad_cmv_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$enfermedad_cmv$probabilidad_solo_msc * eventos_adversos$enfermedad_cmv$costo_unitario*cuota_sinletermo_2025

costo_eventos_adversos_sin_letermovir_2025 <- costo_neutropenia_sin_letermovir_2025 + costo_infecciones_oportunistas_sin_letermovir_2025 + costo_enfermedad_renal_aguda_sin_letermovir_2025 + costo_eich_sin_letermovir_2025 + costo_rehospitalizaciones_sin_letermovir_2025 + costo_enfermedad_cmv_sin_letermovir_2025

# Meto el costo de los eventos adversos en el data frame de flujo de costos
flujo_pacientes_costos_2025_sin <- flujo_pacientes_costos_2025_sin %>%
  mutate(
    costo_total_eventos_adversos_sin_letermovir_flujo = costo_eventos_adversos_sin_letermovir_2025/(nrow(flujo_pacientes_costos_2025_sin)-1)
  )


#año 2026-----------------------------------------------------------------------

# Cálculo de la diferencia de pacientes entre semanas para cada variable del flujo de pacientes
flujo_pacientes_costos_2026_con <- flujo_pacientes_costos_2026_con %>%
  mutate(
    dif_pacientes_vivos_letermovir = abs(c(0, diff(pacientes_vivos_letermovir))),
    dif_pacientes_libres_infeccion_letermovir = abs(c(0, diff(pacientes_libres_infeccion_letermovir))),
    dif_pacientes_vivos_placebo = abs(c(0, diff(pacientes_vivos_placebo))),
    dif_pacientes_libres_infeccion_placebo = abs(c(0, diff(pacientes_libres_infeccion_placebo)))
  )

# Cálculo de la diferencia de pacientes entre semanas para cada variable del flujo de pacientes
flujo_pacientes_costos_2026_sin <- flujo_pacientes_costos_2026_sin %>%
  mutate(
    dif_pacientes_vivos_letermovir = abs(c(0, diff(pacientes_vivos_letermovir))),
    dif_pacientes_libres_infeccion_letermovir = abs(c(0, diff(pacientes_libres_infeccion_letermovir))),
    dif_pacientes_vivos_placebo = abs(c(0, diff(pacientes_vivos_placebo))),
    dif_pacientes_libres_infeccion_placebo = abs(c(0, diff(pacientes_libres_infeccion_placebo)))
  )

## costos rama con letermovir---------------------------------------------------



### tratamiento letermovir------------------------------------------------------

# Cálculo del costo del tratamiento con Letermovir para los pacientes que no se enferman

flujo_pacientes_costos_2026_con$flujo_pacientes_letermovir <- c(0,flujo_pacientes_costos_2026_con$pacientes_libres_infeccion_letermovir[1:14], rep(0, 38))

costo_letermovir_2026 <- flujo_pacientes_costos_2026_con$flujo_pacientes_letermovir * costo_letermovir_240mg_28_semana


flujo_pacientes_costos_2026_con$costo_trat_letermovir <- costo_letermovir_2026


### tratamiento antivirales-----------------------------------------------------


# Cálculo del costo del tratamiento antiviral para los pacientes que se enferman


flujo_pacientes_costos_2026_con <- flujo_pacientes_costos_2026_con %>%
  mutate(
    costo_tratamiento_cmv_ics_letermovir = dif_pacientes_libres_infeccion_letermovir * (proporciones$proporcion_ganciclovir *costo_ganciclovir + proporciones$proporcion_valganciclovir *costo_valganciclovir + proporciones$proporcion_foscarnet *costo_foscarnet)*cuota_letermo_2026
  )

flujo_pacientes_costos_2026_con <- flujo_pacientes_costos_2026_con %>%
  mutate(
    costo_tratamientos_con_letermovir_flujo = costo_tratamiento_cmv_ics_letermovir+costo_letermovir_2026
  )


### seguimiento-----------------------------------------------------------------

flujo_pacientes_costos_2026_con <- flujo_pacientes_costos_2026_con %>%
  mutate(
    costo_pcr_letermovir = ifelse(semana <= semanas_pcr_semanal, pacientes_vivos_letermovir * seguimiento_pcr_semanal$costo_unitario, 
                                  pacientes_vivos_letermovir * seguimiento_pcr_quincenal$costo_unitario * seguimiento_pcr_quincenal$frecuencia_semanal),
    costo_visita_especialista_letermovir = pacientes_vivos_letermovir * seguimiento_visita_especialista$costo_unitario,
    costo_hemograma_letermovir = pacientes_vivos_letermovir * seguimiento_hemograma$costo_unitario,
    costo_bioquimica_letermovir = pacientes_vivos_letermovir * seguimiento_bioquimica$costo_unitario,
    costo_total_seguimiento_letermovir = costo_pcr_letermovir + costo_visita_especialista_letermovir + costo_hemograma_letermovir + costo_bioquimica_letermovir
  )

### eventos adversos------------------------------------------------------------

# Cálculo del costo de los eventos adversos para el año 2026 (rama Letermovir)

costo_neutropenia_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$neutropenia$probabilidad_letermovir * eventos_adversos$neutropenia$costo_unitario*cuota_letermo_2026

costo_infecciones_oportunistas_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$infecciones_oportunistas$probabilidad_letermovir * eventos_adversos$infecciones_oportunistas$costo_unitario*cuota_letermo_2026

costo_enfermedad_renal_aguda_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$enfermedad_renal_aguda$probabilidad_letermovir * eventos_adversos$enfermedad_renal_aguda$costo_unitario*cuota_letermo_2026

costo_eich_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$eich$probabilidad_letermovir * eventos_adversos$eich$costo_unitario*cuota_letermo_2026

costo_rehospitalizacion_letermovir_2026 <-  poblacion_objetivo_2026 * eventos_adversos$rehospitalizaciones$probabilidad_letermovir * eventos_adversos$rehospitalizaciones$costo_unitario*cuota_letermo_2026

costo_enfermedad_cmv_letermovir_2026 <-  poblacion_objetivo_2026 * eventos_adversos$enfermedad_cmv$probabilidad_letermovir * eventos_adversos$enfermedad_cmv$costo_unitario*cuota_letermo_2026

costo_eventos_adversos_letermovir_2026 <- costo_neutropenia_letermovir_2026 + costo_infecciones_oportunistas_letermovir_2026 + costo_enfermedad_renal_aguda_letermovir_2026 + costo_eich_letermovir_2026 + costo_rehospitalizacion_letermovir_2026 + costo_enfermedad_cmv_letermovir_2026

flujo_pacientes_costos_2026_con <- flujo_pacientes_costos_2026_con %>%
  mutate(
    costo_total_eventos_adversos_con_letermovir_flujo = costo_eventos_adversos_letermovir_2026/(nrow(flujo_pacientes_costos_2026_con)-1)
  )

## costos rama sin letermovir---------------------------------------------------


###tratamiento antivirales------------------------------------------------------

# Cálculo del costo del tratamiento antiviral para los pacientes que se enferman en la rama sin Letermovir
flujo_pacientes_costos_2026_sin <- flujo_pacientes_costos_2026_sin %>%
  mutate(
    costo_tratamiento_cmv_ics_sin_letermovir = dif_pacientes_libres_infeccion_placebo * (
      proporciones_sin_letermovir$proporcion_ganciclovir * costo_ganciclovir +
        proporciones_sin_letermovir$proporcion_valganciclovir * costo_valganciclovir +
        proporciones_sin_letermovir$proporcion_foscarnet * costo_foscarnet
    )*cuota_sinletermo_2026
  )

### seguimiento-----------------------------------------------------------------

flujo_pacientes_costos_2026_sin <- flujo_pacientes_costos_2026_sin %>%
  mutate(
    costo_pcr_sin_letermovir = ifelse(semana <= semanas_pcr_semanal, pacientes_vivos_placebo * seguimiento_pcr_semanal$costo_unitario, 
                                      pacientes_vivos_placebo * seguimiento_pcr_quincenal$costo_unitario * seguimiento_pcr_quincenal$frecuencia_semanal),
    costo_visita_especialista_sin_letermovir = pacientes_vivos_placebo * seguimiento_visita_especialista$costo_unitario,
    costo_hemograma_sin_letermovir = pacientes_vivos_placebo * seguimiento_hemograma$costo_unitario,
    costo_bioquimica_sin_letermovir = pacientes_vivos_placebo * seguimiento_bioquimica$costo_unitario,
    costo_total_seguimiento_sin_letermovir = costo_pcr_sin_letermovir + costo_visita_especialista_sin_letermovir + costo_hemograma_sin_letermovir + costo_bioquimica_sin_letermovir
  )


### eventos adversos------------------------------------------------------------

# Cálculo del costo de los eventos adversos para el año 2026 (rama sin Letermovir)
costo_neutropenia_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$neutropenia$probabilidad_solo_msc * eventos_adversos$neutropenia$costo_unitario*cuota_sinletermo_2026

costo_infecciones_oportunistas_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$infecciones_oportunistas$probabilidad_solo_msc * eventos_adversos$infecciones_oportunistas$costo_unitario*cuota_sinletermo_2026

costo_enfermedad_renal_aguda_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$enfermedad_renal_aguda$probabilidad_solo_msc * eventos_adversos$enfermedad_renal_aguda$costo_unitario*cuota_sinletermo_2025

costo_eich_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$eich$probabilidad_solo_msc * eventos_adversos$eich$costo_unitario*cuota_sinletermo_2026

costo_rehospitalizaciones_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$rehospitalizaciones$probabilidad_solo_msc * eventos_adversos$rehospitalizaciones$costo_unitario*cuota_sinletermo_2026

costo_enfermedad_cmv_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$enfermedad_cmv$probabilidad_solo_msc * eventos_adversos$enfermedad_cmv$costo_unitario*cuota_sinletermo_2026

costo_eventos_adversos_sin_letermovir_2026 <- costo_neutropenia_sin_letermovir_2026 +
                                              costo_infecciones_oportunistas_sin_letermovir_2026 +
                                              costo_enfermedad_renal_aguda_sin_letermovir_2026 +
                                              costo_eich_sin_letermovir_2026 +
                                              costo_rehospitalizaciones_sin_letermovir_2026 +
                                              costo_enfermedad_cmv_sin_letermovir_2026


# Meto el costo de los eventos adversos en el data frame de flujo de costos
flujo_pacientes_costos_2026_sin <- flujo_pacientes_costos_2026_sin %>%
  mutate(
    costo_total_eventos_adversos_sin_letermovir_flujo = costo_eventos_adversos_sin_letermovir_2026/(nrow(flujo_pacientes_costos_2026_sin)-1)
  )



#año 2027-----------------------------------------------------------------------

# Cálculo de la diferencia de pacientes entre semanas para cada variable del flujo de pacientes
flujo_pacientes_costos_2027_con <- flujo_pacientes_costos_2027_con %>%
  mutate(
    dif_pacientes_vivos_letermovir = abs(c(0, diff(pacientes_vivos_letermovir))),
    dif_pacientes_libres_infeccion_letermovir = abs(c(0, diff(pacientes_libres_infeccion_letermovir))),
    dif_pacientes_vivos_placebo = abs(c(0, diff(pacientes_vivos_placebo))),
    dif_pacientes_libres_infeccion_placebo = abs(c(0, diff(pacientes_libres_infeccion_placebo)))
  )

# Cálculo de la diferencia de pacientes entre semanas para cada variable del flujo de pacientes
flujo_pacientes_costos_2027_sin <- flujo_pacientes_costos_2027_sin %>%
  mutate(
    dif_pacientes_vivos_letermovir = abs(c(0, diff(pacientes_vivos_letermovir))),
    dif_pacientes_libres_infeccion_letermovir = abs(c(0, diff(pacientes_libres_infeccion_letermovir))),
    dif_pacientes_vivos_placebo = abs(c(0, diff(pacientes_vivos_placebo))),
    dif_pacientes_libres_infeccion_placebo = abs(c(0, diff(pacientes_libres_infeccion_placebo)))
  )

## costos rama con letermovir---------------------------------------------------

# Cálculo del costo del tratamiento con Letermovir para los pacientes que no se enferman


### tratamiento letermovir------------------------------------------------------

flujo_pacientes_costos_2027_con$flujo_pacientes_letermovir <- c(0,flujo_pacientes_costos_2027_con$pacientes_libres_infeccion_letermovir[1:14], rep(0, 38))

costo_letermovir_2027 <- flujo_pacientes_costos_2027_con$flujo_pacientes_letermovir * costo_letermovir_240mg_28_semana

flujo_pacientes_costos_2027_con$costo_trat_letermovir <- costo_letermovir_2026

### tratamiento antivirales-----------------------------------------------------

# Cálculo del costo del tratamiento antiviral para los pacientes que se enferman

flujo_pacientes_costos_2027_con <- flujo_pacientes_costos_2027_con %>%
  mutate(
    costo_tratamiento_cmv_ics_letermovir = dif_pacientes_libres_infeccion_letermovir * (proporciones$proporcion_ganciclovir *costo_ganciclovir + proporciones$proporcion_valganciclovir *costo_valganciclovir + proporciones$proporcion_foscarnet *costo_foscarnet)*cuota_letermo_2027
  )

flujo_pacientes_costos_2027_con <- flujo_pacientes_costos_2027_con %>%
  mutate(
    costo_tratamientos_con_letermovir_flujo = costo_tratamiento_cmv_ics_letermovir+costo_letermovir_2027
  )

### seguimiento-----------------------------------------------------------------

flujo_pacientes_costos_2027_con <- flujo_pacientes_costos_2027_con %>%
  mutate(
    costo_pcr_letermovir = ifelse(semana <= semanas_pcr_semanal, pacientes_vivos_letermovir * seguimiento_pcr_semanal$costo_unitario, 
                                  pacientes_vivos_letermovir * seguimiento_pcr_quincenal$costo_unitario * seguimiento_pcr_quincenal$frecuencia_semanal),
    costo_visita_especialista_letermovir = pacientes_vivos_letermovir * seguimiento_visita_especialista$costo_unitario,
    costo_hemograma_letermovir = pacientes_vivos_letermovir * seguimiento_hemograma$costo_unitario,
    costo_bioquimica_letermovir = pacientes_vivos_letermovir * seguimiento_bioquimica$costo_unitario,
    costo_total_seguimiento_letermovir = costo_pcr_letermovir + costo_visita_especialista_letermovir + costo_hemograma_letermovir + costo_bioquimica_letermovir
  )

### eventos adversos------------------------------------------------------------

# Cálculo del costo de los eventos adversos para el año 2027 (rama Letermovir)

costo_neutropenia_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$neutropenia$probabilidad_letermovir * eventos_adversos$neutropenia$costo_unitario*cuota_letermo_2027

costo_infecciones_oportunistas_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$infecciones_oportunistas$probabilidad_letermovir * eventos_adversos$infecciones_oportunistas$costo_unitario*cuota_letermo_2027

costo_enfermedad_renal_aguda_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$enfermedad_renal_aguda$probabilidad_letermovir * eventos_adversos$enfermedad_renal_aguda$costo_unitario*cuota_letermo_2027

costo_eich_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$eich$probabilidad_letermovir * eventos_adversos$eich$costo_unitario*cuota_letermo_2027

costo_rehospitalizacion_letermovir_2027 <-  poblacion_objetivo_2027 * eventos_adversos$rehospitalizaciones$probabilidad_letermovir * eventos_adversos$rehospitalizaciones$costo_unitario*cuota_letermo_2027

costo_enfermedad_cmv_letermovir_2027 <-  poblacion_objetivo_2027 * eventos_adversos$enfermedad_cmv$probabilidad_letermovir * eventos_adversos$enfermedad_cmv$costo_unitario*cuota_letermo_2027

costo_eventos_adversos_letermovir_2027 <- costo_neutropenia_letermovir_2027 + costo_infecciones_oportunistas_letermovir_2027 + costo_enfermedad_renal_aguda_letermovir_2027 + costo_eich_letermovir_2027 + costo_rehospitalizacion_letermovir_2027 + costo_enfermedad_cmv_letermovir_2027


flujo_pacientes_costos_2027_con <- flujo_pacientes_costos_2027_con %>%
  mutate(
    costo_total_eventos_adversos_con_letermovir_flujo = costo_eventos_adversos_letermovir_2027/(nrow(flujo_pacientes_costos_2027_con)-1)
  )

## costos rama sin letermovir---------------------------------------------------

### tratamiento antivirales-----------------------------------------------------


# Cálculo del costo del tratamiento antiviral para los pacientes que se enferman en la rama sin Letermovir
flujo_pacientes_costos_2027_sin <- flujo_pacientes_costos_2027_sin %>%
  mutate(
    costo_tratamiento_cmv_ics_sin_letermovir = dif_pacientes_libres_infeccion_placebo * (
      proporciones_sin_letermovir$proporcion_ganciclovir * costo_ganciclovir +
        proporciones_sin_letermovir$proporcion_valganciclovir * costo_valganciclovir +
        proporciones_sin_letermovir$proporcion_foscarnet * costo_foscarnet
    )*cuota_sinletermo_2027
  )

### seguimiento-----------------------------------------------------------------

# Cálculo del costo de seguimiento para los pacientes vivos en la rama sin Letermovir

flujo_pacientes_costos_2027_sin <- flujo_pacientes_costos_2027_sin %>%
  mutate(
    costo_pcr_sin_letermovir = ifelse(semana <= semanas_pcr_semanal, pacientes_vivos_placebo * seguimiento_pcr_semanal$costo_unitario, 
                                      pacientes_vivos_placebo * seguimiento_pcr_quincenal$costo_unitario * seguimiento_pcr_quincenal$frecuencia_semanal),
    costo_visita_especialista_sin_letermovir = pacientes_vivos_placebo * seguimiento_visita_especialista$costo_unitario,
    costo_hemograma_sin_letermovir = pacientes_vivos_placebo * seguimiento_hemograma$costo_unitario,
    costo_bioquimica_sin_letermovir = pacientes_vivos_placebo * seguimiento_bioquimica$costo_unitario,
    costo_total_seguimiento_sin_letermovir = costo_pcr_sin_letermovir + costo_visita_especialista_sin_letermovir + costo_hemograma_sin_letermovir + costo_bioquimica_sin_letermovir
  )

### eventos adversos------------------------------------------------------------


# Cálculo del costo de los eventos adversos para el año 2027 (rama sin Letermovir)
costo_neutropenia_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$neutropenia$probabilidad_solo_msc * eventos_adversos$neutropenia$costo_unitario*cuota_sinletermo_2027

costo_infecciones_oportunistas_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$infecciones_oportunistas$probabilidad_solo_msc * eventos_adversos$infecciones_oportunistas$costo_unitario*cuota_sinletermo_2027

costo_enfermedad_renal_aguda_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$enfermedad_renal_aguda$probabilidad_solo_msc * eventos_adversos$enfermedad_renal_aguda$costo_unitario*cuota_sinletermo_2027

costo_eich_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$eich$probabilidad_solo_msc * eventos_adversos$eich$costo_unitario*cuota_sinletermo_2027

costo_rehospitalizaciones_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$rehospitalizaciones$probabilidad_solo_msc * eventos_adversos$rehospitalizaciones$costo_unitario*cuota_sinletermo_2027

costo_enfermedad_cmv_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$enfermedad_cmv$probabilidad_solo_msc * eventos_adversos$enfermedad_cmv$costo_unitario*cuota_sinletermo_2027

costo_eventos_adversos_sin_letermovir_2027 <- costo_neutropenia_sin_letermovir_2027 +
  costo_infecciones_oportunistas_sin_letermovir_2027 +
  costo_enfermedad_renal_aguda_sin_letermovir_2027 +
  costo_eich_sin_letermovir_2027 +
  costo_rehospitalizaciones_sin_letermovir_2027 +
  costo_enfermedad_cmv_sin_letermovir_2027

# Meto el costo de los eventos adversos en el data frame de flujo de costos
flujo_pacientes_costos_2027_sin <- flujo_pacientes_costos_2027_sin %>%
  mutate(
    costo_total_eventos_adversos_sin_letermovir_flujo = costo_eventos_adversos_sin_letermovir_2027/(nrow(flujo_pacientes_costos_2027_sin)-1)
  )


# consolidado mundo con letermovir---------------------------------------------------------------


## 2025-------------------------------------------------------------------------



flujo_consolidado_mundo_con_letermovir_2025 <- data.frame(
  semana                 = flujo_pacientes_costos_2025_con$semana,
  costo_trat_letermovir  = flujo_pacientes_costos_2025_con$costo_trat_letermovir,
  costo_trat_cmv         = flujo_pacientes_costos_2025_con$costo_tratamiento_cmv_ics_letermovir              + flujo_pacientes_costos_2025_sin$costo_tratamiento_cmv_ics_sin_letermovir,
  costo_eventos_adversos = flujo_pacientes_costos_2025_con$costo_total_eventos_adversos_con_letermovir_flujo + flujo_pacientes_costos_2025_sin$costo_total_eventos_adversos_sin_letermovir_flujo,
  costo_seguimiento      = flujo_pacientes_costos_2025_con$costo_total_seguimiento_letermovir                + flujo_pacientes_costos_2025_sin$costo_total_seguimiento_sin_letermovir
)


## 2026 ------------------------------------------------------------------------



flujo_consolidado_mundo_con_letermovir_2026 <- data.frame(
  semana                 = flujo_pacientes_costos_2026_con$semana,
  costo_trat_letermovir  = flujo_pacientes_costos_2026_con$costo_trat_letermovir,
  costo_trat_cmv         = flujo_pacientes_costos_2026_con$costo_tratamiento_cmv_ics_letermovir              + flujo_pacientes_costos_2026_sin$costo_tratamiento_cmv_ics_sin_letermovir,
  costo_eventos_adversos = flujo_pacientes_costos_2026_con$costo_total_eventos_adversos_con_letermovir_flujo + flujo_pacientes_costos_2026_sin$costo_total_eventos_adversos_sin_letermovir_flujo,
  costo_seguimiento      = flujo_pacientes_costos_2026_con$costo_total_seguimiento_letermovir                + flujo_pacientes_costos_2026_sin$costo_total_seguimiento_sin_letermovir
)






## 2027-------------------------------------------------------------------------


flujo_consolidado_mundo_con_letermovir_2027 <- data.frame(
  semana                 = flujo_pacientes_costos_2027_con$semana,
  costo_trat_letermovir  = flujo_pacientes_costos_2027_con$costo_trat_letermovir,
  costo_trat_cmv         = flujo_pacientes_costos_2027_con$costo_tratamiento_cmv_ics_letermovir              + flujo_pacientes_costos_2027_sin$costo_tratamiento_cmv_ics_sin_letermovir,
  costo_eventos_adversos = flujo_pacientes_costos_2027_con$costo_total_eventos_adversos_con_letermovir_flujo + flujo_pacientes_costos_2027_sin$costo_total_eventos_adversos_sin_letermovir_flujo,
  costo_seguimiento      = flujo_pacientes_costos_2027_con$costo_total_seguimiento_letermovir                + flujo_pacientes_costos_2027_sin$costo_total_seguimiento_sin_letermovir
)



## Visualizaciones finales---------------------------------------------------



# MUNDO SIN LETERMOVIR----------------------------------------------------------


#año 2025-----------------------------------------------------------------------


# Cálculo de la diferencia de pacientes entre semanas para cada variable del flujo de pacientes
flujo_pacientes_costos_2025 <- flujo_pacientes_costos_2025 %>%
  mutate(
    dif_pacientes_vivos_letermovir = abs(c(0, diff(pacientes_vivos_letermovir))),
    dif_pacientes_libres_infeccion_letermovir = abs(c(0, diff(pacientes_libres_infeccion_letermovir))),
    dif_pacientes_vivos_placebo = abs(c(0, diff(pacientes_vivos_placebo))),
    dif_pacientes_libres_infeccion_placebo = abs(c(0, diff(pacientes_libres_infeccion_placebo)))
  )




## costos rama sin letermovir---------------------------------------------------

### tratamiento antivirales-----------------------------------------------------

# Cálculo del costo del tratamiento antiviral para los pacientes que se enferman en la rama sin Letermovir
flujo_pacientes_costos_2025 <- flujo_pacientes_costos_2025 %>%
  mutate(
    costo_tratamiento_cmv_ics_sin_letermovir = dif_pacientes_libres_infeccion_placebo * (
      proporciones_sin_letermovir$proporcion_ganciclovir * costo_ganciclovir +
        proporciones_sin_letermovir$proporcion_valganciclovir * costo_valganciclovir +
        proporciones_sin_letermovir$proporcion_foscarnet * costo_foscarnet
    )
  )

### seguimiento-----------------------------------------------------------------

flujo_pacientes_costos_2025 <- flujo_pacientes_costos_2025 %>%
  mutate(
    costo_pcr_sin_letermovir = ifelse(semana <= semanas_pcr_semanal, pacientes_vivos_placebo * seguimiento_pcr_semanal$costo_unitario, 
                                      pacientes_vivos_placebo * seguimiento_pcr_quincenal$costo_unitario * seguimiento_pcr_quincenal$frecuencia_semanal),
    costo_visita_especialista_sin_letermovir = pacientes_vivos_placebo * seguimiento_visita_especialista$costo_unitario,
    costo_hemograma_sin_letermovir = pacientes_vivos_placebo * seguimiento_hemograma$costo_unitario,
    costo_bioquimica_sin_letermovir = pacientes_vivos_placebo * seguimiento_bioquimica$costo_unitario,
    costo_total_seguimiento_sin_letermovir = costo_pcr_sin_letermovir + costo_visita_especialista_sin_letermovir + costo_hemograma_sin_letermovir + costo_bioquimica_sin_letermovir
  )

### eventos adversos------------------------------------------------------------

# Cálculo del costo de los eventos adversos para el año 2025 (rama sin Letermovir)
costo_neutropenia_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$neutropenia$probabilidad_solo_msc * eventos_adversos$neutropenia$costo_unitario

costo_infecciones_oportunistas_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$infecciones_oportunistas$probabilidad_solo_msc * eventos_adversos$infecciones_oportunistas$costo_unitario

costo_enfermedad_renal_aguda_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$enfermedad_renal_aguda$probabilidad_solo_msc * eventos_adversos$enfermedad_renal_aguda$costo_unitario

costo_eich_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$eich$probabilidad_solo_msc * eventos_adversos$eich$costo_unitario

costo_rehospitalizaciones_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$rehospitalizaciones$probabilidad_solo_msc * eventos_adversos$rehospitalizaciones$costo_unitario

costo_enfermedad_cmv_sin_letermovir_2025 <- poblacion_objetivo_2025 * eventos_adversos$enfermedad_cmv$probabilidad_solo_msc * eventos_adversos$enfermedad_cmv$costo_unitario

costo_eventos_adversos_sin_letermovir_2025 <- costo_neutropenia_sin_letermovir_2025 + costo_infecciones_oportunistas_sin_letermovir_2025 + costo_enfermedad_renal_aguda_sin_letermovir_2025 + costo_eich_sin_letermovir_2025 + costo_rehospitalizaciones_sin_letermovir_2025 + costo_enfermedad_cmv_sin_letermovir_2025

# Meto el costo de los eventos adversos en el data frame de flujo de costos
flujo_pacientes_costos_2025 <- flujo_pacientes_costos_2025 %>%
  mutate(
    costo_total_eventos_adversos_sin_letermovir_flujo = costo_eventos_adversos_sin_letermovir_2025/(nrow(flujo_pacientes_costos_2025)-1)
  )


#año 2026-----------------------------------------------------------------------

# Cálculo de la diferencia de pacientes entre semanas para cada variable del flujo de pacientes
flujo_pacientes_costos_2026 <- flujo_pacientes_costos_2026 %>%
  mutate(
    dif_pacientes_vivos_letermovir = abs(c(0, diff(pacientes_vivos_letermovir))),
    dif_pacientes_libres_infeccion_letermovir = abs(c(0, diff(pacientes_libres_infeccion_letermovir))),
    dif_pacientes_vivos_placebo = abs(c(0, diff(pacientes_vivos_placebo))),
    dif_pacientes_libres_infeccion_placebo = abs(c(0, diff(pacientes_libres_infeccion_placebo)))
  )



## costos rama sin letermovir---------------------------------------------------


###tratamiento antivirales------------------------------------------------------

# Cálculo del costo del tratamiento antiviral para los pacientes que se enferman en la rama sin Letermovir
flujo_pacientes_costos_2026 <- flujo_pacientes_costos_2026 %>%
  mutate(
    costo_tratamiento_cmv_ics_sin_letermovir = dif_pacientes_libres_infeccion_placebo * (
      proporciones_sin_letermovir$proporcion_ganciclovir * costo_ganciclovir +
        proporciones_sin_letermovir$proporcion_valganciclovir * costo_valganciclovir +
        proporciones_sin_letermovir$proporcion_foscarnet * costo_foscarnet
    )
  )

### seguimiento-----------------------------------------------------------------

flujo_pacientes_costos_2026 <- flujo_pacientes_costos_2026 %>%
  mutate(
    costo_pcr_sin_letermovir = ifelse(semana <= semanas_pcr_semanal, pacientes_vivos_placebo * seguimiento_pcr_semanal$costo_unitario, 
                                      pacientes_vivos_placebo * seguimiento_pcr_quincenal$costo_unitario * seguimiento_pcr_quincenal$frecuencia_semanal),
    costo_visita_especialista_sin_letermovir = pacientes_vivos_placebo * seguimiento_visita_especialista$costo_unitario,
    costo_hemograma_sin_letermovir = pacientes_vivos_placebo * seguimiento_hemograma$costo_unitario,
    costo_bioquimica_sin_letermovir = pacientes_vivos_placebo * seguimiento_bioquimica$costo_unitario,
    costo_total_seguimiento_sin_letermovir = costo_pcr_sin_letermovir + costo_visita_especialista_sin_letermovir + costo_hemograma_sin_letermovir + costo_bioquimica_sin_letermovir
  )


### eventos adversos------------------------------------------------------------

# Cálculo del costo de los eventos adversos para el año 2026 (rama sin Letermovir)
costo_neutropenia_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$neutropenia$probabilidad_solo_msc * eventos_adversos$neutropenia$costo_unitario

costo_infecciones_oportunistas_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$infecciones_oportunistas$probabilidad_solo_msc * eventos_adversos$infecciones_oportunistas$costo_unitario

costo_enfermedad_renal_aguda_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$enfermedad_renal_aguda$probabilidad_solo_msc * eventos_adversos$enfermedad_renal_aguda$costo_unitario

costo_eich_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$eich$probabilidad_solo_msc * eventos_adversos$eich$costo_unitario

costo_rehospitalizaciones_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$rehospitalizaciones$probabilidad_solo_msc * eventos_adversos$rehospitalizaciones$costo_unitario

costo_enfermedad_cmv_sin_letermovir_2026 <- poblacion_objetivo_2026 * eventos_adversos$enfermedad_cmv$probabilidad_solo_msc * eventos_adversos$enfermedad_cmv$costo_unitario

costo_eventos_adversos_sin_letermovir_2026 <- costo_neutropenia_sin_letermovir_2026 +
  costo_infecciones_oportunistas_sin_letermovir_2026 +
  costo_enfermedad_renal_aguda_sin_letermovir_2026 +
  costo_eich_sin_letermovir_2026 +
  costo_rehospitalizaciones_sin_letermovir_2026 +
  costo_enfermedad_cmv_sin_letermovir_2026


# Meto el costo de los eventos adversos en el data frame de flujo de costos
flujo_pacientes_costos_2026 <- flujo_pacientes_costos_2026 %>%
  mutate(
    costo_total_eventos_adversos_sin_letermovir_flujo = costo_eventos_adversos_sin_letermovir_2026/(nrow(flujo_pacientes_costos_2026)-1)
  )



#año 2027-----------------------------------------------------------------------

# Cálculo de la diferencia de pacientes entre semanas para cada variable del flujo de pacientes
flujo_pacientes_costos_2027 <- flujo_pacientes_costos_2027 %>%
  mutate(
    dif_pacientes_vivos_letermovir = abs(c(0, diff(pacientes_vivos_letermovir))),
    dif_pacientes_libres_infeccion_letermovir = abs(c(0, diff(pacientes_libres_infeccion_letermovir))),
    dif_pacientes_vivos_placebo = abs(c(0, diff(pacientes_vivos_placebo))),
    dif_pacientes_libres_infeccion_placebo = abs(c(0, diff(pacientes_libres_infeccion_placebo)))
  )




## costos rama sin letermovir---------------------------------------------------

### tratamiento antivirales-----------------------------------------------------


# Cálculo del costo del tratamiento antiviral para los pacientes que se enferman en la rama sin Letermovir
flujo_pacientes_costos_2027 <- flujo_pacientes_costos_2027 %>%
  mutate(
    costo_tratamiento_cmv_ics_sin_letermovir = dif_pacientes_libres_infeccion_placebo * (
      proporciones_sin_letermovir$proporcion_ganciclovir * costo_ganciclovir +
        proporciones_sin_letermovir$proporcion_valganciclovir * costo_valganciclovir +
        proporciones_sin_letermovir$proporcion_foscarnet * costo_foscarnet
    )
  )

### seguimiento-----------------------------------------------------------------

# Cálculo del costo de seguimiento para los pacientes vivos en la rama sin Letermovir

flujo_pacientes_costos_2027 <- flujo_pacientes_costos_2027 %>%
  mutate(
    costo_pcr_sin_letermovir = ifelse(semana <= semanas_pcr_semanal, pacientes_vivos_placebo * seguimiento_pcr_semanal$costo_unitario, 
                                      pacientes_vivos_placebo * seguimiento_pcr_quincenal$costo_unitario * seguimiento_pcr_quincenal$frecuencia_semanal),
    costo_visita_especialista_sin_letermovir = pacientes_vivos_placebo * seguimiento_visita_especialista$costo_unitario,
    costo_hemograma_sin_letermovir = pacientes_vivos_placebo * seguimiento_hemograma$costo_unitario,
    costo_bioquimica_sin_letermovir = pacientes_vivos_placebo * seguimiento_bioquimica$costo_unitario,
    costo_total_seguimiento_sin_letermovir = costo_pcr_sin_letermovir + costo_visita_especialista_sin_letermovir + costo_hemograma_sin_letermovir + costo_bioquimica_sin_letermovir
  )

### eventos adversos------------------------------------------------------------


# Cálculo del costo de los eventos adversos para el año 2027 (rama sin Letermovir)
costo_neutropenia_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$neutropenia$probabilidad_solo_msc * eventos_adversos$neutropenia$costo_unitario

costo_infecciones_oportunistas_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$infecciones_oportunistas$probabilidad_solo_msc * eventos_adversos$infecciones_oportunistas$costo_unitario

costo_enfermedad_renal_aguda_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$enfermedad_renal_aguda$probabilidad_solo_msc * eventos_adversos$enfermedad_renal_aguda$costo_unitario

costo_eich_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$eich$probabilidad_solo_msc * eventos_adversos$eich$costo_unitario

costo_rehospitalizaciones_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$rehospitalizaciones$probabilidad_solo_msc * eventos_adversos$rehospitalizaciones$costo_unitario

costo_enfermedad_cmv_sin_letermovir_2027 <- poblacion_objetivo_2027 * eventos_adversos$enfermedad_cmv$probabilidad_solo_msc * eventos_adversos$enfermedad_cmv$costo_unitario

costo_eventos_adversos_sin_letermovir_2027 <- costo_neutropenia_sin_letermovir_2027 +
  costo_infecciones_oportunistas_sin_letermovir_2027 +
  costo_enfermedad_renal_aguda_sin_letermovir_2027 +
  costo_eich_sin_letermovir_2027 +
  costo_rehospitalizaciones_sin_letermovir_2027 +
  costo_enfermedad_cmv_sin_letermovir_2027

# Meto el costo de los eventos adversos en el data frame de flujo de costos
flujo_pacientes_costos_2027 <- flujo_pacientes_costos_2027 %>%
  mutate(
    costo_total_eventos_adversos_sin_letermovir_flujo = costo_eventos_adversos_sin_letermovir_2027/(nrow(flujo_pacientes_costos_2027)-1)
  )


# visualizaciones----------------------------------------------------------------


## 2025-------------------------------------------------------------------------

flujo_consolidado_mundo_sin_letermovir_2025 <- data.frame(
  semana                 = flujo_pacientes_costos_2025$semana,
  costo_trat_cmv         = flujo_pacientes_costos_2025$costo_tratamiento_cmv_ics_sin_letermovir,
  costo_eventos_adversos = flujo_pacientes_costos_2025$costo_total_eventos_adversos_sin_letermovir_flujo,
  costo_seguimiento      = flujo_pacientes_costos_2025$costo_total_seguimiento_sin_letermovir
)


## 2026 ------------------------------------------------------------------------

flujo_consolidado_mundo_sin_letermovir_2026 <- data.frame(
  semana                 = flujo_pacientes_costos_2026$semana,
  costo_trat_cmv         = flujo_pacientes_costos_2026$costo_tratamiento_cmv_ics_sin_letermovir,
  costo_eventos_adversos = flujo_pacientes_costos_2026$costo_total_eventos_adversos_sin_letermovir_flujo,
  costo_seguimiento      = flujo_pacientes_costos_2026$costo_total_seguimiento_sin_letermovir
)



## 2027-------------------------------------------------------------------------

flujo_consolidado_mundo_sin_letermovir_2027 <- data.frame(
  semana                 = flujo_pacientes_costos_2027$semana,
  costo_trat_cmv         = flujo_pacientes_costos_2027$costo_tratamiento_cmv_ics_sin_letermovir,
  costo_eventos_adversos = flujo_pacientes_costos_2027$costo_total_eventos_adversos_sin_letermovir_flujo,
  costo_seguimiento      = flujo_pacientes_costos_2027$costo_total_seguimiento_sin_letermovir
)



## Visualizaciones finales------------------------------------------------------

Conclusiones

Se presentan los resultados del análisis consolidado para los años 2025, 2026 y 2027, mostrando los costos asociados con y sin el uso de Letermovir.