# Program Name: tsfae15.R# Prep Environmentlibrary(envsetup)library(tern)library(dplyr)library(rtables)library(junco)# Define script level parameters:# - Define output ID and file locationtblid <-"TSFAE15"fileid <- tblidtab_titles <-get_titles_from_file(input_path ='../../_data/', tblid)string_map <- default_str_maptrtvar <-"TRT01A"popfl <-"SAFFL"combined_colspan_trt <-TRUErisk_diff <-TRUErr_method <-"wald"ctrl_grp <-"Placebo"if (combined_colspan_trt ==TRUE) {# Set up levels and label for the required combined columns add_combo <-add_combo_facet("Combined",label ="Combined",levels =c("Xanomeline High Dose", "Xanomeline Low Dose") )# choose if any facets need to be removed - e.g remove the combined column for placebo rm_combo_from_placebo <-cond_rm_facets(facets ="Combined",ancestor_pos =NA,value =" ",split ="colspan_trt" ) mysplit <-make_split_fun(post =list(add_combo, rm_combo_from_placebo))}# Process Data:adsl <- pharmaverseadamjnj::adsl %>%filter(!!rlang::sym(popfl) =="Y") %>%select(STUDYID, USUBJID, all_of(trtvar), all_of(popfl))adae <- pharmaverseadamjnj::adaeocmq %>%filter(TRTEMFL =="Y"& TRDISCFL =="Y"& OCMQCLSS =="Narrow") %>%select(USUBJID, TRTEMFL, OCMQSOC, OCMQNAM)adsl$colspan_trt <-factor(ifelse(adsl[[trtvar]] =="Placebo", " ", "Active Study Agent"),levels =c("Active Study Agent", " "))if (risk_diff ==TRUE) { adsl$rrisk_header <-"Risk Difference (%) (95% CI)" adsl$rrisk_label <-paste(adsl[[trtvar]], paste("vs", ctrl_grp))}# join data togetherae <- adae %>%right_join(., adsl, by =c("USUBJID"))colspan_trt_map <-create_colspan_map( adsl,non_active_grp = ctrl_grp,non_active_grp_span_lbl =" ",active_grp_span_lbl ="Active Study Agent",colspan_var ="colspan_trt",trt_var = trtvar)# Define layout and build table:ref_path <-c("colspan_trt", " ", "TRT01A", "Placebo")extra_args_rr <-list(method = rr_method,ref_path = ref_path,.stats =c("count_unique_fraction"))lyt <-basic_table(top_level_section_div =" ",show_colcounts =TRUE,colcount_format ="N=xx") %>%split_cols_by("colspan_trt",split_fun =trim_levels_to_map(map = colspan_trt_map) )if (combined_colspan_trt ==TRUE) { lyt <- lyt %>%split_cols_by(trtvar, split_fun = mysplit)} else { lyt <- lyt %>%split_cols_by(trtvar)}if (risk_diff ==TRUE) { lyt <- lyt %>%split_cols_by("rrisk_header", nested =FALSE) %>%split_cols_by( trtvar,labels_var ="rrisk_label",split_fun =remove_split_levels("Placebo") )}lyt <- lyt %>%split_rows_by("OCMQSOC",split_label ="Organ System~[super a]",split_fun =trim_levels_in_group("OCMQNAM"),label_pos ="topleft",section_div =c(" "),nested =FALSE ) %>%summarize_row_groups("OCMQSOC",cfun = a_freq_j,extra_args =append(extra_args_rr, NULL) ) %>%analyze("OCMQNAM",afun = a_freq_j,extra_args =append(extra_args_rr, NULL) ) %>%append_topleft(" OCMQ (Narrow), n (%)")result <-build_table(lyt, ae, alt_counts_df = adsl)## Remove the N=xx column headers for the risk difference columnsresult <-remove_col_count(result)# If there is no data display "No data to display" textif (nrow(adae) ==0) { result <-safe_prune_table(result)}# Post-Processing step to sort by descending count on chosen active treatment columns.if (nrow(adae) !=0) { result <-sort_at_path( result,c("root", "OCMQSOC"),scorefun =jj_complex_scorefun() ) result <-sort_at_path( result,c("root", "OCMQSOC", "*", "OCMQNAM"),scorefun =jj_complex_scorefun() )}# Add titles and footnotes:result <-set_titles(result, tab_titles)# Convert to tbl file and output tablett_to_tlgrtf(string_map = string_map, tt = result, file = fileid, orientation ="landscape")
TSFAE15:Subjects With Treatment-emergent Adverse Events Leading to Discontinuation of Study Treatment by System Organ Class and FDA Medical Query (Narrow); Safety Analysis Set (Study jjcs - core)
Active Study Agent
Risk Difference (%) (95% CI)
Organ Systema
Xanomeline High Dose
Xanomeline Low Dose
Combined
Placebo
Xanomeline High Dose vs Placebo
Xanomeline Low Dose vs Placebo
OCMQ (Narrow), n (%)
N=53
N=73
N=126
N=59
Skin and subcutaneous tissue disorders
9 (17.0%)
6 (8.2%)
15 (11.9%)
4 (6.8%)
10.2 (-1.8, 22.2)
1.4 (-7.6, 10.4)
Pruritus
5 (9.4%)
5 (6.8%)
10 (7.9%)
1 (1.7%)
7.7 (-0.8, 16.3)
5.2 (-1.5, 11.8)
Rash
3 (5.7%)
1 (1.4%)
4 (3.2%)
1 (1.7%)
4.0 (-3.1, 11.0)
-0.3 (-4.6, 3.9)
Erythema
2 (3.8%)
1 (1.4%)
3 (2.4%)
2 (3.4%)
0.4 (-6.5, 7.3)
-2.0 (-7.4, 3.3)
General disorders and administration site conditions
4 (7.5%)
4 (5.5%)
8 (6.3%)
3 (5.1%)
2.5 (-6.6, 11.5)
0.4 (-7.3, 8.1)
Dizziness
1 (1.9%)
3 (4.1%)
4 (3.2%)
0
1.9 (-1.8, 5.5)
4.1 (-0.4, 8.7)
Fatigue
2 (3.8%)
1 (1.4%)
3 (2.4%)
0
3.8 (-1.4, 8.9)
1.4 (-1.3, 4.0)
Local Administration Reaction
1 (1.9%)
0
1 (0.8%)
1 (1.7%)
0.2 (-4.7, 5.1)
-1.7 (-5.0, 1.6)
Decreased Appetite
0
0
0
1 (1.7%)
-1.7 (-5.0, 1.6)
-1.7 (-5.0, 1.6)
Peripheral Edema
0
0
0
1 (1.7%)
-1.7 (-5.0, 1.6)
-1.7 (-5.0, 1.6)
Nervous system disorders
4 (7.5%)
1 (1.4%)
5 (4.0%)
1 (1.7%)
5.9 (-2.0, 13.7)
-0.3 (-4.6, 3.9)
Headache
2 (3.8%)
0
2 (1.6%)
0
3.8 (-1.4, 8.9)
0.0 (0.0, 0.0)
Syncope
1 (1.9%)
1 (1.4%)
2 (1.6%)
0
1.9 (-1.8, 5.5)
1.4 (-1.3, 4.0)
Confusional State
1 (1.9%)
0
1 (0.8%)
1 (1.7%)
0.2 (-4.7, 5.1)
-1.7 (-5.0, 1.6)
Infections and infestations
2 (3.8%)
1 (1.4%)
3 (2.4%)
4 (6.8%)
-3.0 (-11.2, 5.2)
-5.4 (-12.4, 1.5)
Nasopharyngitis
2 (3.8%)
1 (1.4%)
3 (2.4%)
3 (5.1%)
-1.3 (-8.9, 6.3)
-3.7 (-9.9, 2.5)
Bacterial Infection
0
0
0
1 (1.7%)
-1.7 (-5.0, 1.6)
-1.7 (-5.0, 1.6)
Vascular disorders
2 (3.8%)
1 (1.4%)
3 (2.4%)
0
3.8 (-1.4, 8.9)
1.4 (-1.3, 4.0)
Hemorrhage
1 (1.9%)
1 (1.4%)
2 (1.6%)
0
1.9 (-1.8, 5.5)
1.4 (-1.3, 4.0)
Thrombosis
1 (1.9%)
0
1 (0.8%)
0
1.9 (-1.8, 5.5)
0.0 (0.0, 0.0)
Thrombosis Arterial
1 (1.9%)
0
1 (0.8%)
0
1.9 (-1.8, 5.5)
0.0 (0.0, 0.0)
Cardiac disorders
1 (1.9%)
1 (1.4%)
2 (1.6%)
0
1.9 (-1.8, 5.5)
1.4 (-1.3, 4.0)
Acute Coronary Syndrome
1 (1.9%)
0
1 (0.8%)
0
1.9 (-1.8, 5.5)
0.0 (0.0, 0.0)
Myocardial Infarction
1 (1.9%)
0
1 (0.8%)
0
1.9 (-1.8, 5.5)
0.0 (0.0, 0.0)
Myocardial Ischemia
1 (1.9%)
0
1 (0.8%)
0
1.9 (-1.8, 5.5)
0.0 (0.0, 0.0)
Palpitations
0
1 (1.4%)
1 (0.8%)
0
0.0 (0.0, 0.0)
1.4 (-1.3, 4.0)
Gastrointestinal disorders
0
2 (2.7%)
2 (1.6%)
1 (1.7%)
-1.7 (-5.0, 1.6)
1.0 (-3.9, 6.0)
Diarrhea
0
2 (2.7%)
2 (1.6%)
1 (1.7%)
-1.7 (-5.0, 1.6)
1.0 (-3.9, 6.0)
Vomiting
0
1 (1.4%)
1 (0.8%)
0
0.0 (0.0, 0.0)
1.4 (-1.3, 4.0)
Respiratory, thoracic and mediastinal disorders
0
1 (1.4%)
1 (0.8%)
0
0.0 (0.0, 0.0)
1.4 (-1.3, 4.0)
Dyspnea
0
1 (1.4%)
1 (0.8%)
0
0.0 (0.0, 0.0)
1.4 (-1.3, 4.0)
Immune system disorders
0
0
0
1 (1.7%)
-1.7 (-5.0, 1.6)
-1.7 (-5.0, 1.6)
Hypersensitivity
0
0
0
1 (1.7%)
-1.7 (-5.0, 1.6)
-1.7 (-5.0, 1.6)
Renal and urinary disorders
0
0
0
1 (1.7%)
-1.7 (-5.0, 1.6)
-1.7 (-5.0, 1.6)
Renal & Urinary Tract Infection
0
0
0
1 (1.7%)
-1.7 (-5.0, 1.6)
-1.7 (-5.0, 1.6)
Key: FMQ=FDA Medical Query
a Each FMQ is aligned to a single system organ class based on clinical judgment, as defined by FDA. However, some FMQs may contain preferred terms from more than one system organ class.