Skip to contents

Erafy a cohort_table collapsing records separated gapEra days or less.

Usage

erafyCohort(
  cohort,
  gapEra,
  cohortId = NULL,
  nameStyle = "{cohort_name}_{gap_era}",
  name = omopgenerics::tableName(cohort)
)

Arguments

cohort

A cohort_table object.

gapEra

Number of days between two continuous exposures to be considered in the same era.

cohortId

A cohort definition id to restrict by. If NULL, all cohorts will be included.

nameStyle

String to create the new names of cohorts. Must contain '{cohort_name}' if more than one cohort is present and '{gap_era}' if more than one gapEra is provided.

name

Name of the new cohort table, it must be a length 1 character vector.

Value

A cohort_table object.

Examples

# \donttest{
cdm <- mockDrugUtilisation()

cdm$cohort2 <- cdm$cohort1 |>
  erafyCohort(gapEra = 30, name = "cohort2")

cdm$cohort2
#> # Source:   table<cohort2> [?? x 4]
#> # Database: DuckDB v1.2.1 [unknown@Linux 6.8.0-1021-azure:R 4.4.3/:memory:]
#>    cohort_definition_id subject_id cohort_start_date cohort_end_date
#>                   <int>      <int> <date>            <date>         
#>  1                    2          5 2012-06-17        2012-10-11     
#>  2                    2         10 2000-11-15        2003-07-14     
#>  3                    2          8 2019-01-29        2020-01-11     
#>  4                    2          3 2021-11-06        2021-11-06     
#>  5                    2          4 1982-10-28        1982-12-20     
#>  6                    1          7 2016-04-18        2022-07-09     
#>  7                    1          2 2002-09-15        2010-09-28     
#>  8                    2          9 2010-06-20        2011-03-20     
#>  9                    1          1 2019-05-27        2020-01-18     
#> 10                    1          6 2016-11-06        2017-02-16     

settings(cdm$cohort2)
#> # A tibble: 3 × 3
#>   cohort_definition_id cohort_name gap_era
#>                  <int> <chr>       <chr>  
#> 1                    1 cohort_1_30 30     
#> 2                    2 cohort_2_30 30     
#> 3                    3 cohort_3_30 30     

mockDisconnect(cdm)
# }