TLG Catalog - Stable
  • Stable
    • Dev
  1. Listings
  2. ECG
  3. EGL01
  • Introduction

  • Tables
    • ADA
      • ADAT01
      • ADAT02
      • ADAT03
      • ADAT04A
      • ADAT04B
    • Adverse Events
      • AET01
      • AET01_AESI
      • AET02
      • AET02_SMQ
      • AET03
      • AET04
      • AET04_PI
      • AET05
      • AET05_ALL
      • AET06
      • AET06_SMQ
      • AET07
      • AET09
      • AET09_SMQ
      • AET10
    • Concomitant Medications
      • CMT01
      • CMT01A
      • CMT01B
      • CMT02_PT
    • Deaths
      • DTHT01
    • Demography
      • DMT01
    • Disclosures
      • DISCLOSUREST01
      • EUDRAT01
      • EUDRAT02
    • Disposition
      • DST01
      • PDT01
      • PDT02
    • ECG
      • EGT01
      • EGT02
      • EGT03
      • EGT04
      • EGT05_QTCAT
    • Efficacy
      • AOVT01
      • AOVT02
      • AOVT03
      • CFBT01
      • CMHT01
      • COXT01
      • COXT02
      • DORT01
      • LGRT02
      • MMRMT01
      • ONCT05
      • RATET01
      • RBMIT01
      • RSPT01
      • TTET01
    • Exposure
      • EXT01
    • Lab Results
      • LBT01
      • LBT02
      • LBT03
      • LBT04
      • LBT05
      • LBT06
      • LBT07
      • LBT08
      • LBT09
      • LBT10
      • LBT10_BL
      • LBT11
      • LBT11_BL
      • LBT12
      • LBT12_BL
      • LBT13
      • LBT14
      • LBT15
    • Medical History
      • MHT01
    • Pharmacokinetic
      • PKCT01
      • PKPT02
      • PKPT03
      • PKPT04
      • PKPT05
      • PKPT06
      • PKPT07
      • PKPT08
      • PKPT11
    • Risk Management Plan
      • RMPT01
      • RMPT03
      • RMPT04
      • RMPT05
      • RMPT06
    • Safety
      • ENTXX
    • Vital Signs
      • VST01
      • VST02
  • Listings
    • ADA
      • ADAL02
    • Adverse Events
      • AEL01
      • AEL01_NOLLT
      • AEL02
      • AEL02_ED
      • AEL03
      • AEL04
    • Concomitant Medications
      • CML01
      • CML02A_GL
      • CML02B_GL
    • Development Safety Update Report
      • DSUR4
    • Disposition
      • DSL01
      • DSL02
    • ECG
      • EGL01
    • Efficacy
      • ONCL01
    • Exposure
      • EXL01
    • Lab Results
      • LBL01
      • LBL01_RLS
      • LBL02A
      • LBL02A_RLS
      • LBL02B
    • Medical History
      • MHL01
    • Pharmacokinetic
      • ADAL01
      • PKCL01
      • PKCL02
      • PKPL01
      • PKPL02
      • PKPL04
    • Vital Signs
      • VSL01
  • Graphs
    • Efficacy
      • FSTG01
      • FSTG02
      • KMG01
      • MMRMG01
      • MMRMG02
    • Other
      • BRG01
      • BWG01
      • CIG01
      • IPPG01
      • LTG01
      • MNG01
    • Pharmacokinetic
      • PKCG01
      • PKCG02
      • PKCG03
      • PKPG01
      • PKPG02
      • PKPG03
      • PKPG04
      • PKPG06

  • Appendix
    • Reproducibility

  • Index

On this page

  • Output
  • Reproducibility
    • Timestamp
    • Session Info
    • .lock file
  • Edit this page
  • Report an issue
  1. Listings
  2. ECG
  3. EGL01

EGL01

Listing of ECG Data: Safety-Evaluable Patients


Output

  • Standard Listing
  • Data Setup
  • Preview
  • Try this using WebR
Code
lsting <- as_listing(
  out,
  key_cols = c("TRT01A", "CRTNPT", "AGSXRC", "AVISIT", "ADY"),
  disp_cols = names(out),
  main_title = "Listing of ECG Data: Safety-Evaluable Patients",
  main_footer = "Baseline is the patient's last observation prior to initiation of study drug. Abnormalities are flagged as high (H) or low (L) if outside the Roche standard reference range." 
)

head(lsting, 20)
Listing of ECG Data: Safety-Evaluable Patients

———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
                                                                                         Heart Rate Result                    QT Duration Result                    RR Duration Result                 
                                                                                 Study     (beats/min);        Heart Rate          (msec);          QT Duration          (msec);          RR Duration  
Treatment   Center/Subject ID            Age/Sex/Race                Visit        Day     Range:(40-100)     Change from BL    Range:(200-500)     Change from BL    Range:(600-1500)    Change from BL
———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
A: Drug X       BRA-1/105       38/M/BLACK OR AFRICAN AMERICAN     BASELINE       149           66.94                 NA            441.78                  NA            896.59                  NA   
                                                                 WEEK 1 DAY 8     314           63.18              -3.76            365.68              -76.10           1376.26              479.67   
                                                                 WEEK 2 DAY 15    398           57.57              -9.37            355.48              -86.29            799.57              -97.02   
                                                                 WEEK 3 DAY 22    470           73.36               6.42            352.45              -89.33           1015.00              118.41   
                                                                 WEEK 4 DAY 29    528           53.72             -13.22            388.42              -53.36           1189.29              292.70   
                                                                 WEEK 5 DAY 36    535           58.25              -8.69            291.77             -150.01            936.09               39.50   
                BRA-1/134                 47/M/WHITE               BASELINE       227           46.99                 NA            385.29                  NA            835.17                  NA   
                                                                 WEEK 1 DAY 8     255           48.38               1.39            453.74               68.46            901.86               66.68   
                                                                 WEEK 2 DAY 15    269          35.40/L            -11.59            413.54               28.26            892.01               56.84   
                                                                 WEEK 3 DAY 22    357           60.50              13.51            394.23                8.95           490.18/L            -344.99   
                                                                 WEEK 4 DAY 29    436           82.28              35.29            398.29               13.00            757.96              -77.21   
                                                                 WEEK 5 DAY 36    440          38.89/L             -8.10            339.38              -45.91            880.26               45.08   
                BRA-1/42        36/M/BLACK OR AFRICAN AMERICAN     BASELINE       477           56.19                 NA           190.94/L                 NA           1276.65                  NA   
                                                                 WEEK 1 DAY 8     534           85.24              29.05            483.71              292.77            735.11             -541.54   
                                                                 WEEK 2 DAY 15    550           55.53              -0.66            386.60              195.66           1092.71             -183.94   
                                                                 WEEK 3 DAY 22    569           65.37               9.18            311.08              120.14           1227.15              -49.50   
                                                                 WEEK 4 DAY 29    608           65.13               8.93            329.78              138.83           250.18/L           -1026.47   
                                                                 WEEK 5 DAY 36    675           49.03              -7.16            470.67              279.73           1321.21               44.56   
                BRA-1/93                  34/F/ASIAN               BASELINE       73            72.12                 NA            306.64                  NA           1324.80                  NA   
                                                                 WEEK 1 DAY 8     207           66.88              -5.24           190.50/L            -116.14           1495.37              170.58   
———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

Baseline is the patient's last observation prior to initiation of study drug. Abnormalities are flagged as high (H) or low (L) if outside the Roche standard reference range.
Experimental use!

WebR is a tool allowing you to run R code in the web browser. Modify the code below and click run to see the results. Alternatively, copy the code and click here to open WebR in a new tab.

Code
library(dplyr)
library(rlistings)

adeg <- random.cdisc.data::cadeg

get_param_unit_range <- function(dataset) {
  u_rng <- lapply(unique(dataset$PARAMCD), function(p) {
    dat <- dataset %>% filter(PARAMCD == p)
    list(
      unit = unique(dat$AVALU),
      range = paste0(unique(dat$ANRLO), "-", unique(dat$ANRHI))
    )
  })
  names(u_rng) <- unique(dataset$PARAMCD)
  u_rng
}

eg_u_rng <- get_param_unit_range(adeg)

adeg_sub <- adeg %>%
  filter(!is.na(AVAL) & SAFFL == "Y" & ANL01FL == "Y" & !is.na(EGSEQ) & PARAMCD != "ECGINTP") %>%
  mutate(
    CRTNPT = paste(SITEID, sub("^.*-([[:alnum:]]+)$", "\\1", SUBJID), sep = "/"),
    AGSXRC = paste(AGE, SEX, RACE, sep = "/"),
    AVAL = format(round(AVAL, 2), nsmall = 2),
    AVAL_ANRIND = ifelse(ANRIND %in% c("NORMAL", ""), AVAL, paste(AVAL, substr(ANRIND, 1, 1), sep = "/")),
    CHG = format(round(CHG, 2), nsmall = 2)
  )

anl_eg <- adeg_sub %>%
  select(SUBJID, CRTNPT, AGSXRC, TRT01A, PARAMCD, AVAL_ANRIND, CHG, ADY, AVISIT, ADTM) %>%
  tidyr::pivot_wider(
    id_cols = c(SUBJID, CRTNPT, AGSXRC, TRT01A, ADY, AVISIT, ADTM),
    names_from = PARAMCD,
    values_from = c(AVAL_ANRIND, CHG)
  )

out <- anl_eg %>%
  select(
    CRTNPT,
    AGSXRC,
    TRT01A,
    AVISIT,
    ADY,
    AVAL_ANRIND_HR,
    CHG_HR,
    AVAL_ANRIND_QT,
    CHG_QT,
    AVAL_ANRIND_RR,
    CHG_RR
  ) %>%
  var_relabel(
    CRTNPT = "Center/Subject ID",
    AGSXRC = "Age/Sex/Race",
    TRT01A = "Treatment",
    AVISIT = "Visit",
    ADY = "Study\nDay",
    AVAL_ANRIND_HR = paste0("Heart Rate Result\n(", eg_u_rng$HR$unit, ");\nRange:(", eg_u_rng$HR$range, ")"),
    CHG_HR = "Heart Rate\nChange from BL",
    AVAL_ANRIND_QT = paste0("QT Duration Result\n(", eg_u_rng$QT$unit, ");\nRange:(", eg_u_rng$QT$range, ")"),
    CHG_QT = "QT Duration\nChange from BL",
    AVAL_ANRIND_RR = paste0("RR Duration Result\n(", eg_u_rng$RR$unit, ");\nRange:(", eg_u_rng$RR$range, ")"),
    CHG_RR = "RR Duration\nChange from BL"
  )

Reproducibility

Timestamp

[1] "2025-07-05 17:29:42 UTC"

Session Info

─ Session info ───────────────────────────────────────────────────────────────
 setting  value
 version  R version 4.5.0 (2025-04-11)
 os       Ubuntu 24.04.2 LTS
 system   x86_64, linux-gnu
 ui       X11
 language (EN)
 collate  en_US.UTF-8
 ctype    en_US.UTF-8
 tz       Etc/UTC
 date     2025-07-05
 pandoc   3.7.0.2 @ /usr/bin/ (via rmarkdown)
 quarto   1.7.32 @ /usr/local/bin/quarto

─ Packages ───────────────────────────────────────────────────────────────────
 package           * version date (UTC) lib source
 backports           1.5.0   2024-05-23 [1] RSPM
 brio                1.1.5   2024-04-24 [1] RSPM
 checkmate           2.3.2   2024-07-29 [1] RSPM
 cli                 3.6.5   2025-04-23 [1] RSPM
 codetools           0.2-20  2024-03-31 [2] CRAN (R 4.5.0)
 curl                6.4.0   2025-06-22 [1] RSPM
 digest              0.6.37  2024-08-19 [1] RSPM
 dplyr             * 1.1.4   2023-11-17 [1] RSPM
 evaluate            1.0.4   2025-06-18 [1] RSPM
 fastmap             1.2.0   2024-05-15 [1] RSPM
 formatters        * 0.5.11  2025-04-09 [1] RSPM
 generics            0.1.4   2025-05-09 [1] RSPM
 glue                1.8.0   2024-09-30 [1] RSPM
 htmltools           0.5.8.1 2024-04-04 [1] RSPM
 htmlwidgets         1.6.4   2023-12-06 [1] RSPM
 jsonlite            2.0.0   2025-03-27 [1] RSPM
 knitr               1.50    2025-03-16 [1] RSPM
 lifecycle           1.0.4   2023-11-07 [1] RSPM
 magrittr            2.0.3   2022-03-30 [1] RSPM
 pillar              1.11.0  2025-07-04 [1] RSPM
 pkgcache            2.2.4   2025-05-26 [1] RSPM
 pkgconfig           2.0.3   2019-09-22 [1] RSPM
 processx            3.8.6   2025-02-21 [1] RSPM
 ps                  1.9.1   2025-04-12 [1] RSPM
 purrr               1.0.4   2025-02-05 [1] RSPM
 R6                  2.6.1   2025-02-15 [1] RSPM
 random.cdisc.data   0.3.16  2024-10-10 [1] RSPM
 rlang               1.1.6   2025-04-11 [1] RSPM
 rlistings         * 0.2.12  2025-06-15 [1] RSPM
 rmarkdown           2.29    2024-11-04 [1] RSPM
 sessioninfo         1.2.3   2025-02-05 [1] any (@1.2.3)
 stringi             1.8.7   2025-03-27 [1] RSPM
 stringr             1.5.1   2023-11-14 [1] RSPM
 testthat            3.2.3   2025-01-13 [1] RSPM
 tibble            * 3.3.0   2025-06-08 [1] RSPM
 tidyr               1.3.1   2024-01-24 [1] RSPM
 tidyselect          1.2.1   2024-03-11 [1] RSPM
 vctrs               0.6.5   2023-12-01 [1] RSPM
 withr               3.0.2   2024-10-28 [1] RSPM
 xfun                0.52    2025-04-02 [1] RSPM
 yaml                2.3.10  2024-07-26 [1] RSPM

 [1] /usr/local/lib/R/site-library
 [2] /usr/local/lib/R/library
 [3] /github/home/R/x86_64-pc-linux-gnu-library/4.5
 * ── Packages attached to the search path.

──────────────────────────────────────────────────────────────────────────────

.lock file

Download the .lock file and use renv::restore() on it to recreate environment used to generate this website.

Download

DSL02
ONCL01
Source Code
---
title: EGL01
subtitle: 'Listing of ECG Data: Safety-Evaluable Patients'
---

------------------------------------------------------------------------

{{< include ../../_utils/envir_hook.qmd >}}

```{r setup, echo = FALSE, warning = FALSE, message = FALSE}
library(dplyr)
library(rlistings)

adeg <- random.cdisc.data::cadeg

get_param_unit_range <- function(dataset) {
  u_rng <- lapply(unique(dataset$PARAMCD), function(p) {
    dat <- dataset %>% filter(PARAMCD == p)
    list(
      unit = unique(dat$AVALU),
      range = paste0(unique(dat$ANRLO), "-", unique(dat$ANRHI))
    )
  })
  names(u_rng) <- unique(dataset$PARAMCD)
  u_rng
}

eg_u_rng <- get_param_unit_range(adeg)

adeg_sub <- adeg %>%
  filter(!is.na(AVAL) & SAFFL == "Y" & ANL01FL == "Y" & !is.na(EGSEQ) & PARAMCD != "ECGINTP") %>%
  mutate(
    CRTNPT = paste(SITEID, sub("^.*-([[:alnum:]]+)$", "\\1", SUBJID), sep = "/"),
    AGSXRC = paste(AGE, SEX, RACE, sep = "/"),
    AVAL = format(round(AVAL, 2), nsmall = 2),
    AVAL_ANRIND = ifelse(ANRIND %in% c("NORMAL", ""), AVAL, paste(AVAL, substr(ANRIND, 1, 1), sep = "/")),
    CHG = format(round(CHG, 2), nsmall = 2)
  )

anl_eg <- adeg_sub %>%
  select(SUBJID, CRTNPT, AGSXRC, TRT01A, PARAMCD, AVAL_ANRIND, CHG, ADY, AVISIT, ADTM) %>%
  tidyr::pivot_wider(
    id_cols = c(SUBJID, CRTNPT, AGSXRC, TRT01A, ADY, AVISIT, ADTM),
    names_from = PARAMCD,
    values_from = c(AVAL_ANRIND, CHG)
  )

out <- anl_eg %>%
  select(
    CRTNPT,
    AGSXRC,
    TRT01A,
    AVISIT,
    ADY,
    AVAL_ANRIND_HR,
    CHG_HR,
    AVAL_ANRIND_QT,
    CHG_QT,
    AVAL_ANRIND_RR,
    CHG_RR
  ) %>%
  var_relabel(
    CRTNPT = "Center/Subject ID",
    AGSXRC = "Age/Sex/Race",
    TRT01A = "Treatment",
    AVISIT = "Visit",
    ADY = "Study\nDay",
    AVAL_ANRIND_HR = paste0("Heart Rate Result\n(", eg_u_rng$HR$unit, ");\nRange:(", eg_u_rng$HR$range, ")"),
    CHG_HR = "Heart Rate\nChange from BL",
    AVAL_ANRIND_QT = paste0("QT Duration Result\n(", eg_u_rng$QT$unit, ");\nRange:(", eg_u_rng$QT$range, ")"),
    CHG_QT = "QT Duration\nChange from BL",
    AVAL_ANRIND_RR = paste0("RR Duration Result\n(", eg_u_rng$RR$unit, ");\nRange:(", eg_u_rng$RR$range, ")"),
    CHG_RR = "RR Duration\nChange from BL"
  )
```

```{r include = FALSE}
webr_code_labels <- c("setup")
```

{{< include ../../_utils/webr_no_include.qmd >}}

## Output

:::: panel-tabset
## Standard Listing

::: {.panel-tabset .nav-justified group="webr"}
## {{< fa regular file-lines sm fw >}} Preview

```{r lsting, test = list(lsting = "lsting")}
lsting <- as_listing(
  out,
  key_cols = c("TRT01A", "CRTNPT", "AGSXRC", "AVISIT", "ADY"),
  disp_cols = names(out),
  main_title = "Listing of ECG Data: Safety-Evaluable Patients",
  main_footer = "Baseline is the patient's last observation prior to initiation of study drug. Abnormalities are flagged as high (H) or low (L) if outside the Roche standard reference range." # nolint: line_length.
)

head(lsting, 20)
```

```{r include = FALSE}
webr_code_labels <- c("lsting")
```

{{< include ../../_utils/webr.qmd >}}
:::

## Data Setup

```{r setup}
#| code-fold: show
```
::::

{{< include ../../_utils/save_results.qmd >}}

{{< include ../../repro.qmd >}}

Made with ❤️ by the NEST Team

  • Edit this page
  • Report an issue
Cookie Preferences