Skip to content

Commit 38cb7da

Browse files
authored
Merge pull request #160 from Biogen-Inc/submit_cran020
Next Release: `v0.2.0`
2 parents d391daf + 28d491a commit 38cb7da

49 files changed

Lines changed: 1139 additions & 695 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.Rbuildignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,4 @@ vignettes/x0*
2727
^doc$
2828
^Meta$
2929
^CRAN-SUBMISSION$
30+
^scripts$

.github/workflows/pkgdown.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
push:
55
branches: [main, master]
66
pull_request:
7-
branches: [main, master, for_cranny]
7+
branches: [main, master, devel]
88
release:
99
types: [published]
1010
workflow_dispatch:

CRAN-SUBMISSION

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Version: 0.2.0
2+
Date: 2023-02-03 16:27:30 UTC
3+
SHA: d30f87b5819d7624f7ef1a8527430cbe747255ce

DESCRIPTION

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,37 @@
11
Package: tidyCDISC
22
Title: Quick Table Generation & Exploratory Analyses on ADaM-Ish Datasets
3-
Version: 0.1.1
3+
Version: 0.2.0
44
Authors@R: c(
5-
person("Aaron", "Clark", , "clark.aaronchris@gmail.com",
6-
role = c("aut", "cre"), comment = c(ORCID = "0000-0002-0123-0970")),
5+
person("Aaron", "Clark", , "clark.aaronchris@gmail.com", role = c("aut", "cre"),
6+
comment = c(ORCID = "0000-0002-0123-0970")),
7+
person("Jeff", "Thompson", , "jeff.thompson51317@gmail.com", role = "aut"),
8+
person("Teresa", "Wilson", , "teresadwilson@gmail.com", role = "aut"),
79
person("Nate", "Mockler", , "nate.mockler@biogen.com", role = c("ccp", "led")),
810
person("Maya", "Gans", , "maya.gans@biogen.com", role = "aut"),
911
person("Robert", "Krajcik", , "robert.krajcik@biogen.com", role = "ctb"),
1012
person("Marly", "Gotti", , "marly.cormar@biogen.com", role = "ctb"),
11-
person(given = "Jeff", family = "Thompson",
12-
email = "jeff.thompson51317@gmail.com", role = "ctb"),
1313
person("Biogen", "Inc", role = "cph")
1414
)
1515
Description: Provides users a quick exploratory dive into common
1616
visualizations without writing a single line of code given the users
17-
data follows the Analysis Data Model (ADaM) standards put forth by
18-
the Clinical Data Interchange Standards Consortium
19-
(CDISC) <https://www.cdisc.org>. Prominent modules/ features of the application are the Table
20-
Generator, Population Explorer, and the Individual Explorer. The Table
21-
Generator allows users to drag and drop variables and desired statistics
22-
(frequencies, means, ANOVA, t-test, and other summary statistics) into
23-
bins that automagically create stunning tables with validated
24-
information. The Population Explorer offers various plots to visualize
25-
general trends in the population from various vantage points. Plot
26-
modules currently include scatter plot, spaghetti plot, box plot,
27-
histogram, means plot, and bar plot. Each plot type allows the user to
28-
plot uploaded variables against one another, and dissect the
29-
population by filtering out certain subjects. Last, the Individual
30-
Explorer establishes a cohesive patient narrative, allowing the user
31-
to interact with patient metrics (params) by visit or plotting
32-
important patient events on a timeline. All modules allow for concise
33-
filtering & downloading bulk outputs into html or pdf formats to save
34-
for later.
17+
data follows the Analysis Data Model (ADaM) standards put forth by the
18+
Clinical Data Interchange Standards Consortium (CDISC)
19+
<https://www.cdisc.org>. Prominent modules/ features of the
20+
application are the Table Generator, Population Explorer, and the
21+
Individual Explorer. The Table Generator allows users to drag and drop
22+
variables and desired statistics (frequencies, means, ANOVA, t-test,
23+
and other summary statistics) into bins that automagically create
24+
stunning tables with validated information. The Population Explorer
25+
offers various plots to visualize general trends in the population
26+
from various vantage points. Plot modules currently include scatter
27+
plot, spaghetti plot, box plot, histogram, means plot, and bar plot.
28+
Each plot type allows the user to plot uploaded variables against one
29+
another, and dissect the population by filtering out certain subjects.
30+
Last, the Individual Explorer establishes a cohesive patient
31+
narrative, allowing the user to interact with patient metrics (params)
32+
by visit or plotting important patient events on a timeline. All
33+
modules allow for concise filtering & downloading bulk outputs into
34+
html or pdf formats to save for later.
3535
License: AGPL (>= 3)
3636
URL: https://Biogen-Inc.github.io/tidyCDISC/
3737
BugReports: https://github.com/Biogen-Inc/tidyCDISC/issues
@@ -65,11 +65,11 @@ Imports:
6565
tippy (== 0.1.0)
6666
Suggests:
6767
knitr,
68-
pkgdown,
6968
spelling,
7069
testthat
70+
VignetteBuilder:
71+
knitr
7172
Encoding: UTF-8
7273
Language: en-US
7374
LazyData: true
7475
RoxygenNote: 7.2.0
75-
VignetteBuilder: knitr

NEWS.md

Lines changed: 29 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,31 @@
1+
2+
# tidyCDISC 0.2.0 (CRAN Release)
3+
4+
* Added RTF export option for download from the Table Generator.
5+
* Cleaned up JS to 'standard analyses' drop down.
6+
* Created "ALL" as dropdown option for 'standard analysis' Table 41 instead of auto populating all available weeks in the drop zone.
7+
* added protocol / study id in prominent location on each tab
8+
* designed `ATPT` variable integration in the Table Generator (when present in data)
9+
* added `OS Health` & `riskmetric` badges to the `README`
10+
* engineered more user-friendly function to create the table generator output from the block data
11+
* ensured Table Generator output automatically updates the table name when a 'standard analysis' is selected
12+
* Fixed some Population Explorer filtering issues
13+
* Added an `app.R` file so that shiny app can be ran directly from `shiny::runGitHub()` or `runUrl()`
14+
15+
116
# tidyCDISC 0.1.1
217

318
* automated a footnote with **Source** and **Run Date** in table generation
4-
519
* allowed custom user-defined footnotes
6-
720
* allowed the selection of 'All' when a time/visit-based statistic is chosen in the table generator
8-
921
* cleaned up downloadable R Script to replicate table generator output
10-
1122
* fixed bug where `data_from` was erroneously listed as a grouping option in the population explorer
1223

1324

1425
# tidyCDISC 0.1.0 (CRAN Release)
1526
* cleaning up `devtools::check()` & preparing for CRAN release.
16-
1727
* unfortunately, had to revert back to importing `tippy 0.1.0` since it is the latest available version on CRAN and CRAN pkgs cannot depend on package versions under development.
18-
1928
* created a new toggle on the `Data` tab that allows users to select which CDISC pilot study data sources they wish to use in the app.
20-
2129
* Minor bug improvements
2230

2331
# tidyCDISC 0.0.4
@@ -44,20 +52,20 @@ This release (PR #65) performs a lot of functions, testing on many non-pilot ADS
4452
This release adds meat to the previous skeleton version of `tidyCDISC`. The initial development release was intended to be a "bare bones" platform that could serve as a foundation to build a great clinical data exploratory tool. Version `0.0.1` enriches the user experience by adding useful & commonly needed features for analysis. For more on this release, see [the announcement](https://biogen-inc.github.io/tidyCDISC/articles/Blog.html#announcing-tidycdisc-0-0-1-1) on our blog.
4553

4654

47-
- Major Features added, by tab:
48-
- **Table Generator**
49-
- New "STAT Blocks", such as `Y FREQ`, `MAX FREQ`, `NON-MISSING`, and a pair of `NESTED FREQ` blocks
50-
- Interact with `ADAE`
51-
- 17 new 'standard analysis' tables in the `ADAE` and `ADLB` space.
52-
- An R Script download-er to reproduce analysis performed in the app
53-
- **Population Explorer**
54-
- New Chart types
55-
- line plot - means over time
56-
- Heat map - endpoint correlations
57-
- Kaplan Meier Curve (when `TTE` class data uploaded)
58-
- Upgraded `pkgdown` site documentation to be more robust and hassle-free for developers
59-
- Depends on updated version of IDEAFilter (>= 0.1.0.9000)
60-
- Squashed bugs and other minor improvements
55+
* Major Features added, by tab:
56+
* **Table Generator**
57+
* New "STAT Blocks", such as `Y FREQ`, `MAX FREQ`, `NON-MISSING`, and a pair of `NESTED FREQ` blocks
58+
* Interact with `ADAE`
59+
* 17 new 'standard analysis' tables in the `ADAE` and `ADLB` space.
60+
* An R Script download-er to reproduce analysis performed in the app
61+
* **Population Explorer**
62+
* New Chart types
63+
* line plot - means over time
64+
* Heat map - endpoint correlations
65+
* Kaplan Meier Curve (when `TTE` class data uploaded)
66+
* Upgraded `pkgdown` site documentation to be more robust and hassle-free for developers
67+
* Depends on updated version of IDEAFilter (>= 0.1.0.9000)
68+
* Squashed bugs and other minor improvements
6169

6270
# tidyCDISC 0.0.0.9000
6371

R/data-phuse_TDF_ADaM.R

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
#'
66
#' @source <https://github.com/phuse-org/TestDataFactory/blob/master/Updated/TDF_ADaM/adsl.xpt>, downloaded 2020-06-17
77
#' @format Data frame with 254 features and 51 fields
8-
#'
98
"adsl"
109

1110

@@ -16,7 +15,6 @@
1615
#' @source <https://github.com/phuse-org/TestDataFactory/blob/master/Updated/TDF_ADaM/adlbc.xpt>, downloaded 2020-06-17
1716
#'
1817
#' @format Data frame with 32,740 features and 58 fields
19-
#'
2018
"adlbc"
2119

2220

@@ -27,7 +25,6 @@
2725
#' @source <https://github.com/phuse-org/TestDataFactory/blob/master/Updated/TDF_ADaM/advs.xpt>, downloaded 2020-06-17
2826
#'
2927
#' @format Data frame with 32,139 features and 34 fields
30-
#'
3128
"advs"
3229

3330

@@ -38,7 +35,6 @@
3835
#' @source <https://github.com/phuse-org/TestDataFactory/blob/master/Updated/TDF_ADaM/adae.xpt>, downloaded 2020-06-17
3936
#'
4037
#' @format Data frame with 32,139 features and 34 fields
41-
#'
4238
"adae"
4339

4440

@@ -49,5 +45,4 @@
4945
#' @source <https://github.com/phuse-org/TestDataFactory/blob/master/Updated/TDF_ADaM/adtte.xpt>, downloaded 2021-01-26
5046
#'
5147
#' @format Data frame with 32,740 features and 58 fields
52-
#'
5348
"adtte"

R/golem_utils_ui.R

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -246,40 +246,47 @@ col_12 <- function(...){
246246
column(12, ...)
247247
}
248248

249+
#' @noRd
249250
#' @importFrom shiny column
250251
col_10 <- function(...){
251252
column(10, ...)
252253
}
253254

255+
#' @noRd
254256
#' @importFrom shiny column
255257
col_8 <- function(...){
256258
column(8, ...)
257259
}
258260

261+
#' @noRd
259262
#' @importFrom shiny column
260263
col_6 <- function(...){
261264
column(6, ...)
262265
}
263266

264267

268+
#' @noRd
265269
#' @importFrom shiny column
266270
col_4 <- function(...){
267271
column(4, ...)
268272
}
269273

270274

275+
#' @noRd
271276
#' @importFrom shiny column
272277
col_3 <- function(...){
273278
column(3, ...)
274279
}
275280

276281

282+
#' @noRd
277283
#' @importFrom shiny column
278284
col_2 <- function(...){
279285
column(2, ...)
280286
}
281287

282288

289+
#' @noRd
283290
#' @importFrom shiny column
284291
col_1 <- function(...){
285292
column(1, ...)

R/mod_dataComplyRules_fct_helpers.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ df_incl_rules <-
7979
#'
8080
#' @family dataComply Functions
8181
#' @keywords internal
82-
#'
82+
#' @noRd
8383
gather_rules <- function(input, output, session,
8484
all_df_rules = list(error = c(""), warn = c("") ),
8585
expl_rules = list( list(error = c(""), warn = c("")) ),

R/mod_dataUpload.R

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ mod_dataUpload_ui <- function(id){
3333
tooltip = shinyWidgets::tooltipOptions(title = "Click to change pilot data selections!")
3434
))
3535
),
36+
div(uiOutput(ns("study_data_upload")), style = "padding-left: 20px", class = "studyid"),
3637
fluidRow(
3738
style = "padding: 20px",
3839
column(3,
@@ -167,6 +168,12 @@ mod_dataUpload_server <- function(input, output, session){
167168
paste0("Warning: data uploaded from multiple studies: ", paste(studies(), collapse = " & "))
168169
})
169170

171+
output$study_data_upload <- renderUI({
172+
req(studies())
173+
study_ids <- paste(studies(), collapse = " & ")
174+
h4(paste("Study ID: ", study_ids))
175+
})
176+
170177
# upon a dataset being uploaded and selected, generate data preview
171178
output$datapreview_header <- renderUI({
172179
data_selected()

R/mod_indvExpPatEvents.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,12 +104,12 @@ mod_indvExpPatEvents_server <- function(input, output, session,
104104
shinyjs::show(id = "eventsPlot")
105105

106106
if("MH_" %in% substr(uni_rec$DOMAIN,1,3)){
107-
tab <- uni_rec %>% select(-START, -END, -DOMAIN)
107+
tab <- uni_rec %>% select(EVENTTYP, tab_st, tab_en, DECODE)
108108
date_cols <- c("Start of Event","End of Event")
109109
}
110110
else{
111111
date_cols <- "Date of Event"
112-
tab <- uni_rec %>% select(-END, -tab_st, -tab_en, -DOMAIN)
112+
tab <- uni_rec %>% select(EVENTTYP, START, DECODE)
113113
}
114114

115115
output$eventsTable <- DT::renderDataTable(server = FALSE, { # This allows for downloading entire data set

0 commit comments

Comments
 (0)