This article describes how to apply a data cut, when the date to
apply is not the more common singular date, but a different date per
patient. An example would be to cut all patients data at their week 24
visit date. The below is an example how this can be done utilizing
datacutr.
To start, all SDTM data needs to be stored in a list.
The next step is to create the DCUT dataset containing
the description, and a fixed date that ensures all data necessary from
ds is included into DCUT. An example would be
today’s date.
dcut <- create_dcut(
dataset_ds = source_data$ds,
ds_date_var = DSSTDTC,
filter = DSDECOD == "RANDOMIZATION",
cut_date = as.character(lubridate::today()),
cut_description = "Week 24 Cut"
)| USUBJID | DCUTDTC | DCUTDTM | DCUTDESC |
|---|---|---|---|
| AB12345-001 | 2024-12-17 | 2024-12-17 23:59:59 | Week 24 Cut |
| AB12345-002 | 2024-12-17 | 2024-12-17 23:59:59 | Week 24 Cut |
| AB12345-003 | 2024-12-17 | 2024-12-17 23:59:59 | Week 24 Cut |
| AB12345-004 | 2024-12-17 | 2024-12-17 23:59:59 | Week 24 Cut |
| AB12345-005 | 2024-12-17 | 2024-12-17 23:59:59 | Week 24 Cut |
The next step is to update DCUT with the required date
per patient required for the variable cut. An example is below using the
trial visits as source. If the required event has not been observed,
keeping DCUT.DCUTDTC as the future/today date ensures all
data is kept within the cut for that patient.
sv <- tibble::tribble(
~USUBJID, ~VISIT, ~SVSTDTC,
"AB12345-001", "WEEK24", "2022-06-01",
"AB12345-002", "WEEK24", "2022-06-30",
"AB12345-003", "WEEK24", "2022-07-01",
"AB12345-004", "WEEK24", "2022-05-04",
)
dcut <- dcut %>%
left_join(sv %>%
filter(VISIT == "WEEK24") %>%
select(USUBJID, SVSTDTC)) %>%
mutate(DCUTDTC = as.character(ifelse(!is.na(SVSTDTC), SVSTDTC, as.character(DCUTDTC)))) %>%
impute_dcutdtc(dsin = ., varin = DCUTDTC, varout = DCUTDTM)| USUBJID | DCUTDTC | DCUTDTM | DCUTDESC |
|---|---|---|---|
| AB12345-001 | 2022-06-01 | 2022-06-01 23:59:59 | Week 24 Cut |
| AB12345-002 | 2022-06-30 | 2022-06-30 23:59:59 | Week 24 Cut |
| AB12345-003 | 2022-07-01 | 2022-07-01 23:59:59 | Week 24 Cut |
| AB12345-004 | 2022-05-04 | 2022-05-04 23:59:59 | Week 24 Cut |
| AB12345-005 | 2024-12-17 | 2024-12-17 23:59:59 | Week 24 Cut |
Now that DCUT is prepared, the rest of the process
follows the same as previously prescribed using either the wrapped
function approach Link
or modular approach Link