## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>", message = FALSE, warning = FALSE ) ## ----------------------------------------------------------------------------- library(PatientProfiles) library(dplyr) library(omock) library(CohortConstructor) library(CodelistGenerator) cdm <- mockCdmFromDataset(datasetName = "GiBleed", source = "duckdb") ## ----------------------------------------------------------------------------- codelist <- getDrugIngredientCodes( cdm = cdm, name = "acetaminophen", nameStyle = "{concept_name}" ) cdm$my_cohort <- conceptCohort( cdm = cdm, conceptSet = codelist, name = "my_cohort" ) |> requireIsFirstEntry() codelist <- list(osteoarthritis = 80180L, diverticular_disease = 4266809L) cdm$conditions <- conceptCohort( cdm = cdm, conceptSet = codelist, name = "conditions" ) ## ----------------------------------------------------------------------------- cohort_event_days <- cdm$my_cohort |> addCohortEventDays( targetCohortTable = "conditions", indexDate = "cohort_start_date", order = "first", window = list(next_year = c(0, 365)) ) cohort_event_days |> glimpse() ## ----------------------------------------------------------------------------- cohort_event_days |> group_by(event_next_year) |> summarise( n = n(), median_days = median(days_next_year) ) |> collect() ## ----------------------------------------------------------------------------- cohort_event_date <- cdm$my_cohort |> addCohortEventDate( targetCohortTable = "conditions", indexDate = "cohort_start_date", order = "last", window = list(previous_year = c(-365, 0)) ) cohort_event_date |> glimpse() ## ----------------------------------------------------------------------------- concept_event_days <- cdm$my_cohort |> addConceptEventDays( conceptSet = codelist, order = "first", window = list(next_event = c(0, Inf)) ) concept_event_days |> glimpse() ## ----------------------------------------------------------------------------- cdm$my_cohort |> addConceptEventDays( conceptSet = codelist, order = "first", window = list("next" = c(0, Inf)), multipleEvents = NULL ) |> group_by(event_next) |> summarise(n = n()) |> collect() ## ----------------------------------------------------------------------------- cdm$my_cohort |> addConceptEventDays( conceptSet = codelist, order = "first", window = list("next" = c(0, Inf)), multipleEvents = TRUE ) |> group_by(event_next) |> summarise(n = n()) |> collect() ## ----------------------------------------------------------------------------- cdm$my_cohort |> addConceptEventDays( conceptSet = codelist, order = "first", window = list("next" = c(0, Inf)), multipleEvents = c("osteoarthritis", "diverticular_disease") ) |> group_by(event_next) |> summarise(n = n()) |> collect() ## ----------------------------------------------------------------------------- events_in_two_directions <- cdm$my_cohort |> addCohortEventDays( targetCohortTable = "conditions", order = "first", window = list( before = c(-365, 0), after = c(0, 365) ) ) events_in_two_directions |> glimpse()