a_eair100_j {junco} | R Documentation |
Exposure-Adjusted Incidence Rate
Description
Statistical/Analysis Function for presenting Exposure-Adjusted Incidence Rate summary data
Usage
s_eair100_levii_j(
levii,
df,
.df_row,
.var,
.alt_df_full = NULL,
id = "USUBJID",
diff = FALSE,
conf_level = 0.95,
trt_var = NULL,
ctrl_grp = NULL,
cur_trt_grp = NULL,
inriskdiffcol = FALSE,
fup_var,
occ_var,
occ_dy
)
a_eair100_j(
df,
labelstr = NULL,
.var,
.df_row,
.spl_context,
.alt_df_full = NULL,
id = "USUBJID",
drop_levels = FALSE,
riskdiff = TRUE,
ref_path = NULL,
.stats = c("eair"),
.formats = NULL,
.labels = NULL,
.indent_mods = NULL,
na_str = rep("NA", 3),
conf_level = 0.95,
fup_var,
occ_var,
occ_dy
)
Arguments
levii |
( |
df |
( |
.df_row |
( |
.var |
( |
.alt_df_full |
( |
id |
( |
diff |
( |
conf_level |
( |
trt_var |
( |
ctrl_grp |
( |
cur_trt_grp |
( |
inriskdiffcol |
( |
fup_var |
( |
occ_var |
( |
occ_dy |
( |
labelstr |
( |
.spl_context |
( |
drop_levels |
( |
riskdiff |
( |
ref_path |
( |
.stats |
( |
.formats |
(named 'character' or 'list') |
.labels |
(named 'character') |
.indent_mods |
(named |
na_str |
( |
Value
-
s_eair100_levii_j()
returns a list containing the following statistics:n_event: Number of events
person_years: Total person-years of follow-up
eair: Exposure-adjusted incidence rate per 100 person-years
eair_diff: Risk difference in EAIR (if diff=TRUE and inriskdiffcol=TRUE)
eair_diff_ci: Confidence interval for the risk difference (if diff=TRUE and inriskdiffcol=TRUE)
.
The list of available statistics (core columns) can also be viewed by runningjunco_get_stats("a_eair100_j")
-
a_eair100_j
returns the corresponding list with formattedrtables::CellValue()
.
Functions
-
s_eair100_levii_j()
: calculates exposure-adjusted incidence rates (EAIR) per 100 person-years for a specific level of a variable. -
a_eair100_j()
: Formatted analysis function for exposure adjusted incidence rate summary which is used asafun
inanalyze
orcfun
insummarize_row_groups
.
Examples
library(tern)
library(dplyr)
trtvar <- "ARM"
ctrl_grp <- "B: Placebo"
cutoffd <- as.Date("2023-09-24")
adexsum <- ex_adsl %>%
create_colspan_var(
non_active_grp = ctrl_grp,
non_active_grp_span_lbl = " ",
active_grp_span_lbl = "Active Study Agent",
colspan_var = "colspan_trt",
trt_var = trtvar
) %>%
mutate(
rrisk_header = "Risk Difference (95% CI)",
rrisk_label = paste(!!rlang::sym(trtvar), "vs", ctrl_grp),
TRTDURY = case_when(
!is.na(EOSDY) ~ EOSDY,
TRUE ~ as.integer(cutoffd - as.Date(TRTSDTM) + 1)
)
) %>%
select(USUBJID, !!rlang::sym(trtvar), colspan_trt, rrisk_header, rrisk_label, TRTDURY)
adexsum$TRTDURY <- as.numeric(adexsum$TRTDURY)
adae <- ex_adae %>%
group_by(USUBJID, AEDECOD) %>%
select(USUBJID, AEDECOD, ASTDY) %>%
mutate(rwnum = row_number()) %>%
mutate(AOCCPFL = case_when(
rwnum == 1 ~ "Y",
TRUE ~ NA
)) %>%
filter(AOCCPFL == "Y")
aefup <- left_join(adae, adexsum, by = "USUBJID")
colspan_trt_map <- create_colspan_map(adexsum,
non_active_grp = ctrl_grp,
non_active_grp_span_lbl = " ",
active_grp_span_lbl = "Active Study Agent",
colspan_var = "colspan_trt",
trt_var = trtvar
)
ref_path <- c("colspan_trt", " ", trtvar, ctrl_grp)
lyt <- basic_table(show_colcounts = TRUE, colcount_format = "N=xx", top_level_section_div = " ") %>%
split_cols_by("colspan_trt", split_fun = trim_levels_to_map(map = colspan_trt_map)) %>%
split_cols_by(trtvar) %>%
split_cols_by("rrisk_header", nested = FALSE) %>%
split_cols_by(trtvar, labels_var = "rrisk_label", split_fun = remove_split_levels(ctrl_grp)) %>%
analyze("TRTDURY",
nested = FALSE,
show_labels = "hidden",
afun = a_patyrs_j
) %>%
analyze(
vars = "AEDECOD",
nested = FALSE,
afun = a_eair100_j,
extra_args = list(
fup_var = "TRTDURY",
occ_var = "AOCCPFL",
occ_dy = "ASTDY",
ref_path = ref_path,
drop_levels = TRUE
)
)
result <- build_table(lyt, aefup, alt_counts_df = adexsum)
head(result, 5)