View source: R/recordCohortAttrition.R
| recordCohortAttrition | R Documentation | 
Update cohort attrition.
recordCohortAttrition(cohort, reason, cohortId = NULL)
| cohort | A cohort_table object. | 
| reason | A character string. | 
| cohortId | Cohort definition id of the cohort to update attrition. If NULL all cohort_definition_id are updated. | 
cohort_table with updated attrition.
library(omopgenerics)
library(dplyr, warn.conflicts = FALSE)
person <- tibble(
  person_id = 1, gender_concept_id = 0, year_of_birth = 1990,
  race_concept_id = 0, ethnicity_concept_id = 0
)
observation_period <- tibble(
  observation_period_id = 1, person_id = 1,
  observation_period_start_date = as.Date("2000-01-01"),
  observation_period_end_date = as.Date("2023-12-31"),
  period_type_concept_id = 0
)
cohort <- tibble(
  cohort_definition_id = c(1, 1, 1, 2),
  subject_id = 1,
  cohort_start_date = as.Date(c("2020-01-01", "2021-01-01", "2022-01-01", "2022-01-01")),
  cohort_end_date = as.Date(c("2020-01-01", "2021-01-01", "2022-01-01", "2022-01-01")),
)
cdm <- cdmFromTables(
  tables = list("person" = person, "observation_period" = observation_period),
  cdmName = "my_example_cdm",
  cohortTables = list("cohort1" = cohort)
)
cdm$cohort1
attrition(cdm$cohort1)
cdm$cohort1 <- cdm$cohort1 |>
  group_by(cohort_definition_id, subject_id) |>
  filter(cohort_start_date == min(cohort_start_date)) |>
  ungroup() |>
  compute(name = "cohort1", temporary = FALSE) |>
  recordCohortAttrition("Restrict to first observation")
cdm$cohort1
attrition(cdm$cohort1)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.