derive_var_trtemfl {admiral} | R Documentation |
Derive treatment emergent analysis flag (e.g., TRTEMFL
).
derive_var_trtemfl(
dataset,
new_var = TRTEMFL,
start_date = ASTDTM,
end_date = AENDTM,
trt_start_date = TRTSDTM,
trt_end_date = NULL,
end_window = NULL,
ignore_time_for_trt_end = TRUE,
initial_intensity = NULL,
intensity = NULL
)
dataset |
Input dataset The variables specified by |
new_var |
New variable |
start_date |
Event start date Permitted Values: A symbol referring to a date or datetime variable of the input dataset |
end_date |
Event end date Permitted Values: A symbol referring to a date or datetime variable of the input dataset |
trt_start_date |
Treatment start date Permitted Values: A symbol referring to a date or datetime variable of the input dataset |
trt_end_date |
Treatment end date Permitted Values: A symbol referring to a date or datetime variable of
the input dataset or |
end_window |
If the argument is specified, events starting more than the specified number of days after end of treatment, are not flagged. Permitted Values: A non-negative integer or |
ignore_time_for_trt_end |
If the argument is set to Permitted Values: |
initial_intensity |
Initial severity/intensity or toxicity This derivation assumes AE data collection method as single record per AE with “initial” and “most extreme” severity/intensity recorded separately. If the argument is specified, events which start before treatment start and end after treatment start (or are ongoing) and worsened (i.e., the intensity is greater than the initial intensity), are flagged. The values of the specified variable must be comparable with the usual
comparison operators. I.e., if the intensity is greater than the initial
intensity Permitted Values: A symbol referring to a variable of the input dataset
or |
intensity |
Severity/intensity or toxicity If the argument is specified, events which start before treatment start and end after treatment start (or are ongoing) and worsened (i.e., the intensity is greater than the initial intensity), are flagged. The values of the specified variable must be comparable with the usual
comparison operators. I.e., if the intensity is greater than the initial
intensity Permitted Values: A symbol referring to a variable of the input dataset
or |
For the derivation of the new variable the following cases are considered in this order. The first case which applies, defines the value of the variable.
not treated: If trt_start_date
is NA
, it is set to NA_character_
.
event before treatment: If end_date
is before trt_start_date
(and
end_date
is not NA
), it is set to NA_character_
.
no event date: If start_date
is NA
, it is set to "Y"
as in such
cases it is usually considered more conservative to assume the event was
treatment-emergent.
event started during treatment:
if end_window
is not specified:
if start_date
is on or after trt_start_date
, it is set to "Y"
,
if end_window
is specified:
if start_date
is on or after trt_start_date
and start_date
is on
or before trt_end_date
+ end_window
days, it is set to "Y"
,
event started before treatment and (possibly) worsened on treatment:
if initial_intensity
and intensity
is specified: if
initial_intensity < intensity
and start_date
is before
trt_start_date
and end_date
is on or after trt_start_date
or
end_date
is NA
, it is set to "Y"
.
Otherwise it is set to NA_character_
.
The input dataset with the variable specified by new_var
added
OCCDS Functions:
derive_vars_atc()
,
derive_vars_query()
,
get_terms_from_db()
library(tibble)
library(dplyr, warn.conflicts = FALSE)
library(lubridate)
adae <- expected <- tribble(
~USUBJID, ~ASTDTM, ~AENDTM, ~AEITOXGR, ~AETOXGR,
# before treatment
"1", "2021-12-13T20:15", "2021-12-15T12:45", "1", "1",
"1", "2021-12-14T20:15", "2021-12-14T22:00", "1", "3",
# starting before treatment and ending during treatment
"1", "2021-12-30T20:00", "2022-01-14T11:00", "1", "3",
"1", "2021-12-31T20:15", "2022-01-01T01:23", "1", "1",
# starting during treatment
"1", "2022-01-01T12:00", "2022-01-02T23:25", "3", "4",
# after treatment
"1", "2022-05-10T11:00", "2022-05-10T13:05", "2", "2",
"1", "2022-05-11T11:00", "2022-05-11T13:05", "2", "2",
# missing dates
"1", "", "", "3", "4",
"1", "2021-12-30T09:00", "", "3", "4",
"1", "2021-12-30T11:00", "", "3", "3",
"1", "", "2022-01-04T09:00", "3", "4",
"1", "", "2021-12-24T19:00", "3", "4",
"1", "", "2022-06-04T09:00", "3", "4",
# without treatment
"2", "", "2021-12-03T12:00", "1", "2",
"2", "2021-12-01T12:00", "2021-12-03T12:00", "1", "2",
"2", "2021-12-06T18:00", "", "1", "2"
) %>%
mutate(
ASTDTM = ymd_hm(ASTDTM),
AENDTM = ymd_hm(AENDTM),
TRTSDTM = if_else(USUBJID == "1", ymd_hm("2022-01-01T01:01"), ymd_hms("")),
TRTEDTM = if_else(USUBJID == "1", ymd_hm("2022-04-30T23:59"), ymd_hms(""))
)
# derive TRTEMFL without considering treatment end and worsening
derive_var_trtemfl(adae) %>% select(ASTDTM, AENDTM, TRTSDTM, TRTEMFL)
# derive TRTEM2FL taking treatment end and worsening into account
derive_var_trtemfl(
adae,
new_var = TRTEM2FL,
trt_end_date = TRTEDTM,
end_window = 10,
initial_intensity = AEITOXGR,
intensity = AETOXGR
) %>% select(ASTDTM, AENDTM, AEITOXGR, AETOXGR, TRTEM2FL)