R/nkbc-onk-fullfoljt-cytbeh-enl-behplan-38.R

# Jfr https://bitbucket.org/cancercentrum/nkbc-onlinerapporter/src/2018-05-19/nkbc38.R#lines-194

#' @export
nkbc38 <- list(
  code = "nkbc38",
  kortnamn = "nkbc_onk_fullfoljt_cytbeh_enl_behplan_38",
  lab = c(
    sv = "Fullföljd pre-och postoperativ cytostatikabehandling enligt behandlingsplan (antal kurer)"
  ),
  pop = c(
    sv = "opererade, cytostatikabehandlade fall utan fjärrmetastaser vid diagnos"
  ),
  filter_pop = function(x, ...) {
    dplyr::filter(
      x,
      # Inrapporteringen av given onkologisk behandling har påbörjats vid olika tidpunkter i olika sjukvårdsregioner.
      # Fr.o.m. 2012 anses rapportering ha skett nationellt
      lubridate::year(a_diag_dat) >= 2012,

      # Enbart opererade fall
      !is.na(op_kir_dat),

      # Enbart cytostatikabehandlade fall
      d_kemo == TRUE,

      # Ej fall med fjärrmetastaser vid diagnos
      !(a_tnm_mklass_Varde %in% 10)
    )
  },
  mutate_outcome = function(x, ...) {
    dplyr::mutate(x,
      d_pre_kemo_enlplan = dplyr::case_when(
        pre_kemo_enlplan_Varde == 0L ~ 0L,
        pre_kemo_enlplan_Varde == 1L ~ 1L,
        pre_kemo_enlplan_Varde == 98L ~ NA_integer_
      ),
      d_post_kemo_enlplan = dplyr::case_when(
        post_kemo_enlplan_Varde == 0L ~ 0L,
        post_kemo_enlplan_Varde == 1L ~ 1L,
        post_kemo_enlplan_Varde == 98L ~ NA_integer_
      ),
      # Går på det värde som finns
      outcome = as.logical(pmin(d_pre_kemo_enlplan, d_post_kemo_enlplan, na.rm = TRUE)),
    )
  },
  sjhkod_var = "d_onk_sjhkod",
  other_vars = c("a_pat_alder", "d_invasiv"),
  om_indikatorn = NULL,
  vid_tolkning = NULL,
  inkl_beskr_onk_beh = TRUE,
  teknisk_beskrivning = NULL
)
class(nkbc38) <- "nkbcind"
oc1lojo/nkbcind documentation built on Sept. 30, 2022, 10:06 p.m.