## ----message= FALSE, warning=FALSE-------------------------------------------- library(CDMConnector) library(PatientProfiles) library(duckdb) library(dplyr) library(ggplot2) cdm <- mockPatientProfiles(numberIndividuals = 1000) cdm$cohort1 %>% glimpse() settings(cdm$cohort1) cdm$cohort2 %>% glimpse() settings(cdm$cohort2) ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectFlag( indexDate = "cohort_start_date", targetCohortTable = "cohort2", targetStartDate = "cohort_start_date", targetEndDate = "cohort_end_date", window = list(c(-180, 180)) ) |> glimpse() cdm$cohort1 %>% addCohortIntersectCount( indexDate = "cohort_start_date", targetCohortTable = "cohort2", targetStartDate = "cohort_start_date", targetEndDate = "cohort_end_date", window = list(c(-180, 180)) ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectDate( indexDate = "cohort_start_date", targetCohortTable = "cohort2", targetDate = "cohort_start_date", window = list(c(-180, 180)), order = "first" ) |> glimpse() cdm$cohort1 %>% addCohortIntersectDays( indexDate = "cohort_start_date", targetCohortTable = "cohort2", targetDate = "cohort_start_date", window = list(c(-180, 180)), order = "first" ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- common_cold <- dplyr::tibble( cohort_definition_id = 1, subject_id = 1, cohort_start_date = as.Date("2020-02-01"), cohort_end_date = as.Date("2020-02-15") ) aspirin <- dplyr::tibble( cohort_definition_id = c(1, 1), subject_id = c(1, 1), cohort_start_date = as.Date(c("2020-01-01", "2020-02-10")), cohort_end_date = as.Date(c("2020-01-28", "2020-03-15")) ) ## ----message= FALSE, warning=FALSE-------------------------------------------- bind_rows( common_cold |> mutate(cohort = "common cold"), aspirin |> mutate(cohort = "aspirin") ) |> mutate(record = as.character(row_number())) |> ggplot() + geom_segment( aes( x = cohort_start_date, y = cohort, xend = cohort_end_date, yend = cohort, col = cohort, fill = cohort ), size = 4.5, alpha = .5 ) + geom_point(aes(x = cohort_start_date, y = cohort, color = cohort), size = 4) + geom_point(aes(x = cohort_end_date, y = cohort, color = cohort), size = 4) + ylab("") + xlab("") + theme_minimal() + theme(legend.position = "none") ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm <- mockPatientProfiles( cohort1 = common_cold, cohort2 = aspirin, numberIndividuals = 2 ) ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectFlag( targetCohortTable = "cohort2", indexDate = "cohort_start_date", targetStartDate = "cohort_start_date", targetEndDate = "cohort_end_date", window = list(c(0, 0)), ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectFlag( targetCohortTable = "cohort2", indexDate = "cohort_end_date", targetStartDate = "cohort_start_date", targetEndDate = "cohort_end_date", window = list(c(0, 0)) ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectFlag( targetCohortTable = "cohort2", indexDate = "cohort_start_date", targetStartDate = "cohort_start_date", targetEndDate = "cohort_end_date", window = list(c(-90, 90)), ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectCount( targetCohortTable = "cohort2", indexDate = "cohort_start_date", targetStartDate = "cohort_start_date", targetEndDate = "cohort_end_date", window = list(c(-90, 90)), ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectDate( targetCohortTable = "cohort2", indexDate = "cohort_start_date", targetDate = "cohort_start_date", window = list(c(-90, 90)), order = "first" ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectDate( targetCohortTable = "cohort2", indexDate = "cohort_start_date", targetDate = "cohort_start_date", window = list(c(-90, 90)), order = "last" ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectDate( targetCohortTable = "cohort2", indexDate = "cohort_start_date", targetDate = "cohort_start_date", window = list(c(-90, 90)), order = "last", nameStyle = "{cohort_name}_{window_name}" ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 %>% addCohortIntersectDate( targetCohortTable = "cohort2", indexDate = "cohort_start_date", targetDate = "cohort_start_date", window = list(c(-90, 90)), order = "last", nameStyle = "my_new_variable" ) |> glimpse() ## ----message= FALSE, warning=FALSE-------------------------------------------- cdm$cohort1 |> addCohortIntersectDate( targetCohortTable = "cohort2", indexDate = "cohort_start_date", targetDate = "cohort_start_date", window = list(c(-90, 90)), order = "last", nameStyle = "{cohort_name}_{window_name}_{value}" ) |> addCohortIntersectDays( targetCohortTable = "cohort2", indexDate = "cohort_start_date", targetDate = "cohort_start_date", window = list(c(-90, 90)), order = "last", nameStyle = "{cohort_name}_{window_name}_{value}" ) |> glimpse()