Skip to contents

intersectCohorts() combines different cohort entries, with those records that overlap combined and kept. Cohort entries are when an individual was in both of the cohorts.

Usage

intersectCohorts(
  cohort,
  cohortId = NULL,
  gap = 0,
  returnNonOverlappingCohorts = FALSE,
  keepOriginalCohorts = FALSE,
  name = tableName(cohort)
)

Arguments

cohort

A cohort table in a cdm reference.

cohortId

Vector identifying which cohorts to include (cohort_definition_id or cohort_name). Cohorts not included will be removed from the cohort set.

gap

Number of days between two subsequent cohort entries to be merged in a single cohort record.

returnNonOverlappingCohorts

Whether the generated cohorts are mutually exclusive or not.

keepOriginalCohorts

If TRUE the original cohorts and the newly created intersection cohort will be returned. If FALSE only the new cohort will be returned.

name

Name of the new cohort table created in the cdm object.

Value

A cohort table.

Examples

# \donttest{
library(CohortConstructor)

cdm <- mockCohortConstructor(nPerson = 100)

cdm$cohort3 <- intersectCohorts(
  cohort = cdm$cohort2,
  name = "cohort3",
)

settings(cdm$cohort3)
#> # A tibble: 1 × 5
#>   cohort_definition_id cohort_name         gap cohort_1 cohort_2
#>                  <int> <chr>             <dbl>    <dbl>    <dbl>
#> 1                    1 cohort_1_cohort_2     0        1        1

# }