exitAtObservationEnd()
resets cohort end date based on a set of specified
column dates. The last date that occurs is chosen.
This functions changes cohort end date to the end date of the observation period corresponding to the cohort entry. In the case were this generates overlapping records in the cohort, overlapping entries will be merged.
Usage
exitAtObservationEnd(
cohort,
cohortId = NULL,
limitToCurrentPeriod = TRUE,
name = tableName(cohort)
)
Arguments
- cohort
A cohort table in a cdm reference.
- cohortId
Vector identifying which cohorts to modify (cohort_definition_id or cohort_name). If NULL, all cohorts will be used; otherwise, only the specified cohorts will be modified, and the rest will remain unchanged.
- limitToCurrentPeriod
If TRUE, limits the cohort to one entry per person, ending at the current observation period. If FALSE, subsequent observation periods will create new cohort entries.
- name
Name of the new cohort table created in the cdm object.
Examples
# \donttest{
library(CohortConstructor)
cdm <- mockCohortConstructor()
cdm$cohort1 |> exitAtObservationEnd()
#> # Source: table<main.cohort1> [6 x 4]
#> # Database: DuckDB v1.1.2 [unknown@Linux 6.5.0-1025-azure:R 4.4.2/:memory:]
#> cohort_definition_id subject_id cohort_start_date cohort_end_date
#> <int> <int> <date> <date>
#> 1 1 9 2012-01-18 2012-06-30
#> 2 1 3 1976-11-28 2000-04-25
#> 3 1 5 2007-10-19 2014-09-25
#> 4 1 6 2003-10-31 2005-11-04
#> 5 1 2 1964-09-18 1968-04-03
#> 6 1 4 1998-06-22 2013-05-12
# }