From f2563b1d2f81f1f054f8db62c5dbde17983d2467 Mon Sep 17 00:00:00 2001 From: vedhav Date: Mon, 29 Jan 2024 17:12:12 +0530 Subject: [PATCH 1/6] fix: handle delayed choices --- R/tm_g_gh_boxplot.R | 41 +++++++++++++++++++++++++++++------------ 1 file changed, 29 insertions(+), 12 deletions(-) diff --git a/R/tm_g_gh_boxplot.R b/R/tm_g_gh_boxplot.R index 24d8e6d4..c74bf118 100644 --- a/R/tm_g_gh_boxplot.R +++ b/R/tm_g_gh_boxplot.R @@ -210,7 +210,8 @@ tm_g_gh_boxplot <- function(label, plot_height = plot_height, plot_width = plot_width, hline_vars_colors = hline_vars_colors, - hline_vars_labels = hline_vars_labels + hline_vars_labels = hline_vars_labels, + module_args = args ), ui = ui_g_boxplot, ui_args = args @@ -251,16 +252,7 @@ ui_g_boxplot <- function(id, ...) { selected = a$trt_group$selected, multiple = FALSE ), - templ_ui_params_vars( - ns, - xparam_choices = a$param$choices, - xparam_selected = a$param$selected, - xparam_label = "Select a Biomarker", - xchoices = a$xaxis_var$choices, - xselected = a$xaxis_var$selected, - ychoices = a$yaxis_var$choices, - yselected = a$yaxis_var$selected - ), + uiOutput(ns("asdf")), teal.widgets::optionalSelectInput( ns("facet_var"), label = "Facet by", @@ -324,13 +316,38 @@ srv_g_boxplot <- function(id, plot_height, plot_width, hline_vars_colors, - hline_vars_labels) { + hline_vars_labels, + module_args) { with_reporter <- !missing(reporter) && inherits(reporter, "Reporter") with_filter <- !missing(filter_panel_api) && inherits(filter_panel_api, "FilterPanelAPI") checkmate::assert_class(data, "reactive") checkmate::assert_class(shiny::isolate(data()), "teal_data") moduleServer(id, function(input, output, session) { + output$asdf <- renderUI({ + resolved_x <- teal.transform::resolve_delayed( + module_args$xaxis_var, + as.list(data()@env) + ) + resolved_y <- teal.transform::resolve_delayed( + module_args$yaxis_var, + as.list(data()@env) + ) + resolved_param <- teal.transform::resolve_delayed( + module_args$param, + as.list(data()@env) + ) + templ_ui_params_vars( + session$ns, + xparam_choices = resolved_param$choices, + xparam_selected = resolved_param$selected, + xparam_label = module_args$"Select a Biomarker", + xchoices = resolved_x$choices, + xselected = resolved_x$selected, + ychoices = resolved_y$choices, + yselected = resolved_y$selected + ) + }) # reused in all modules anl_q_output <- constr_anl_q( session, input, data, dataname, From e08c8a38b1441fd3340cfa04a1b6ed32d220c93f Mon Sep 17 00:00:00 2001 From: "27856297+dependabot-preview[bot]@users.noreply.github.com" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 29 Jan 2024 11:49:31 +0000 Subject: [PATCH 2/6] [skip actions] Roxygen Man Pages Auto Update --- DESCRIPTION | 2 +- man/teal_goshawk.Rd | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index 6e513200..2f8d24c6 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -66,4 +66,4 @@ Encoding: UTF-8 Language: en-US LazyData: true Roxygen: list(markdown = TRUE) -RoxygenNote: 7.2.3 +RoxygenNote: 7.3.1 diff --git a/man/teal_goshawk.Rd b/man/teal_goshawk.Rd index 58102711..c2598ff1 100644 --- a/man/teal_goshawk.Rd +++ b/man/teal_goshawk.Rd @@ -2,6 +2,8 @@ % Please edit documentation in R/teal_goshawk.R \docType{package} \name{teal_goshawk} +\alias{teal.goshawk} +\alias{teal.goshawk-package} \alias{teal_goshawk} \title{teal.goshawk core packages} \description{ @@ -10,5 +12,27 @@ The teal.goshawk package renders the UI and calls the respective biomarker visua \details{ The data used for teal.goshawk have some constraints. It must contain the columns \code{AVISITCD}, \code{BASE}, \code{BASE2}, \code{AVALU}, \code{LBSTRESC}, \code{LOQFL}, \code{CHG2}, and \code{PCHG2}. +} +\author{ +\strong{Maintainer}: Nick Paszty \email{nick.paszty@gene.com} + +Authors: +\itemize{ + \item Dawid Kaledkowski \email{dawid.kaledkowski@roche.com} + \item Mahmoud Hallal \email{mahmoud.hallal@roche.com} + \item Pawel Rucki \email{pawel.rucki@roche.com} + \item Wenyi Liu \email{liu.wenyi@roche.com} + \item Jeffrey Tomlinson \email{tomlinson.jeffrey@roche.com} + \item Bali Toth \email{toth.balazs@gene.com} + \item Junlue Zhao + \item Maciej Nasinski +} + +Other contributors: +\itemize{ + \item Maximilian Mordig [contributor] + \item F. Hoffmann-La Roche AG [copyright holder, funder] +} + } \keyword{internal} From 87fcea5c85f2abd512ab8709390c4951ba1b361f Mon Sep 17 00:00:00 2001 From: vedhav Date: Mon, 29 Jan 2024 17:33:44 +0530 Subject: [PATCH 3/6] fix: trigger the ui creation only during init --- R/tm_g_gh_boxplot.R | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/R/tm_g_gh_boxplot.R b/R/tm_g_gh_boxplot.R index c74bf118..88f9d7f1 100644 --- a/R/tm_g_gh_boxplot.R +++ b/R/tm_g_gh_boxplot.R @@ -325,18 +325,10 @@ srv_g_boxplot <- function(id, moduleServer(id, function(input, output, session) { output$asdf <- renderUI({ - resolved_x <- teal.transform::resolve_delayed( - module_args$xaxis_var, - as.list(data()@env) - ) - resolved_y <- teal.transform::resolve_delayed( - module_args$yaxis_var, - as.list(data()@env) - ) - resolved_param <- teal.transform::resolve_delayed( - module_args$param, - as.list(data()@env) - ) + env <- shiny::isolate(as.list(data()@env)) + resolved_x <- teal.transform::resolve_delayed(module_args$xaxis_var, env) + resolved_y <- teal.transform::resolve_delayed(module_args$yaxis_var, env) + resolved_param <- teal.transform::resolve_delayed(module_args$param, env) templ_ui_params_vars( session$ns, xparam_choices = resolved_param$choices, From df8a76dd27dae4653ff5125baf76c9a7d391d13a Mon Sep 17 00:00:00 2001 From: vedhav Date: Mon, 29 Jan 2024 17:37:31 +0530 Subject: [PATCH 4/6] chore: pass spell check --- inst/WORDLIST | 2 ++ 1 file changed, 2 insertions(+) diff --git a/inst/WORDLIST b/inst/WORDLIST index a4a0271f..668571fd 100644 --- a/inst/WORDLIST +++ b/inst/WORDLIST @@ -5,6 +5,7 @@ Balazs Biomarker Biomarkers Forkers +Hoffmann LOQFL UI balazs @@ -12,6 +13,7 @@ biomarker biomarkers customizable facetting +funder interpretability jeffrey liu From 1c0145fb69ed3226b42bada0053e70f07e612dce Mon Sep 17 00:00:00 2001 From: vedhav Date: Fri, 2 Feb 2024 07:58:20 +0530 Subject: [PATCH 5/6] chore: apply the changes to other modules --- R/tm_g_gh_boxplot.R | 4 ++-- R/tm_g_gh_correlationplot.R | 33 +++++++++++++++++++-------- R/tm_g_gh_density_distribution_plot.R | 26 +++++++++++++++------ R/tm_g_gh_lineplot.R | 33 +++++++++++++++++++-------- R/tm_g_gh_scatterplot.R | 32 ++++++++++++++++++-------- R/tm_g_gh_spaghettiplot.R | 32 ++++++++++++++++++-------- 6 files changed, 115 insertions(+), 45 deletions(-) diff --git a/R/tm_g_gh_boxplot.R b/R/tm_g_gh_boxplot.R index 88f9d7f1..1219f4e6 100644 --- a/R/tm_g_gh_boxplot.R +++ b/R/tm_g_gh_boxplot.R @@ -252,7 +252,7 @@ ui_g_boxplot <- function(id, ...) { selected = a$trt_group$selected, multiple = FALSE ), - uiOutput(ns("asdf")), + uiOutput(ns("axis_selections")), teal.widgets::optionalSelectInput( ns("facet_var"), label = "Facet by", @@ -324,7 +324,7 @@ srv_g_boxplot <- function(id, checkmate::assert_class(shiny::isolate(data()), "teal_data") moduleServer(id, function(input, output, session) { - output$asdf <- renderUI({ + output$axis_selections <- renderUI({ env <- shiny::isolate(as.list(data()@env)) resolved_x <- teal.transform::resolve_delayed(module_args$xaxis_var, env) resolved_y <- teal.transform::resolve_delayed(module_args$yaxis_var, env) diff --git a/R/tm_g_gh_correlationplot.R b/R/tm_g_gh_correlationplot.R index 3697abb1..36eda220 100644 --- a/R/tm_g_gh_correlationplot.R +++ b/R/tm_g_gh_correlationplot.R @@ -259,7 +259,8 @@ tm_g_gh_correlationplot <- function(label, hline_vars_colors = hline_vars_colors, hline_vars_labels = hline_vars_labels, vline_vars_colors = vline_vars_colors, - vline_vars_labels = vline_vars_labels + vline_vars_labels = vline_vars_labels, + module_args = args ), ui = ui_g_correlationplot, ui_args = args @@ -284,13 +285,7 @@ ui_g_correlationplot <- function(id, ...) { selected = a$trt_group$selected, multiple = FALSE ), - templ_ui_params_vars( - ns, - xparam_choices = a$xaxis_param$choices, xparam_selected = a$xaxis_param$selected, - xchoices = a$xaxis_var$choices, xselected = a$xaxis_var$selected, - yparam_choices = a$yaxis_param$choices, yparam_selected = a$yaxis_param$selected, - ychoices = a$yaxis_var$choices, yselected = a$yaxis_var$selected - ), + uiOutput(ns("axis_selections")), templ_ui_constraint(ns, "X-Axis Data Constraint"), # required by constr_anl_q if (length(a$hline_vars) > 0) { teal.widgets::optionalSelectInput( @@ -375,13 +370,33 @@ srv_g_correlationplot <- function(id, hline_vars_colors, hline_vars_labels, vline_vars_colors, - vline_vars_labels) { + vline_vars_labels, + module_args) { with_reporter <- !missing(reporter) && inherits(reporter, "Reporter") with_filter <- !missing(filter_panel_api) && inherits(filter_panel_api, "FilterPanelAPI") checkmate::assert_class(data, "reactive") checkmate::assert_class(shiny::isolate(data()), "teal_data") moduleServer(id, function(input, output, session) { + output$axis_selections <- renderUI({ + env <- shiny::isolate(as.list(data()@env)) + resolved_x_param <- teal.transform::resolve_delayed(module_args$xaxis_param, env) + resolved_x_var <- teal.transform::resolve_delayed(module_args$xaxis_var, env) + resolved_y_param <- teal.transform::resolve_delayed(module_args$yaxis_param, env) + resolved_y_var <- teal.transform::resolve_delayed(module_args$yaxis_var, env) + templ_ui_params_vars( + session$ns, + xparam_choices = resolved_x_param$choices, + xparam_selected = resolved_x_param$selected, + xchoices = resolved_x_var$choices, + xselected = resolved_x_var$selected, + yparam_choices = resolved_y_param$choices, + yparam_selected = resolved_y_param$selected, + ychoices = resolved_y_var$choices, + yselected = resolved_y_var$selected + ) + }) + iv_r <- reactive({ iv <- shinyvalidate::InputValidator$new() diff --git a/R/tm_g_gh_density_distribution_plot.R b/R/tm_g_gh_density_distribution_plot.R index 424e801f..ca5da653 100644 --- a/R/tm_g_gh_density_distribution_plot.R +++ b/R/tm_g_gh_density_distribution_plot.R @@ -166,7 +166,8 @@ tm_g_gh_density_distribution_plot <- function(label, # nolint color_manual = color_manual, color_comb = color_comb, plot_height = plot_height, - plot_width = plot_width + plot_width = plot_width, + module_args = args ), ui = ui_g_density_distribution_plot, ui_args = args @@ -201,11 +202,7 @@ ui_g_density_distribution_plot <- function(id, ...) { selected = a$trt_group$selected, multiple = FALSE ), - templ_ui_params_vars( - ns, - xparam_choices = a$param$choices, xparam_selected = a$param$selected, xparam_label = "Select a Biomarker", - xchoices = a$xaxis_var$choices, xselected = a$xaxis_var$selected - ), + uiOutput(ns("axis_selections")), templ_ui_constraint(ns, label = "Data Constraint"), ui_arbitrary_lines(id = ns("hline_arb"), a$hline_arb, a$hline_arb_label, a$hline_arb_color), teal.widgets::panel_group( @@ -263,13 +260,28 @@ srv_g_density_distribution_plot <- function(id, # nolint color_manual, color_comb, plot_height, - plot_width) { + plot_width, + module_args) { with_reporter <- !missing(reporter) && inherits(reporter, "Reporter") with_filter <- !missing(filter_panel_api) && inherits(filter_panel_api, "FilterPanelAPI") checkmate::assert_class(data, "reactive") checkmate::assert_class(shiny::isolate(data()), "teal_data") moduleServer(id, function(input, output, session) { + output$axis_selections <- renderUI({ + env <- shiny::isolate(as.list(data()@env)) + resolved_x <- teal.transform::resolve_delayed(module_args$xaxis_var, env) + resolved_param <- teal.transform::resolve_delayed(module_args$param, env) + templ_ui_params_vars( + session$ns, + xparam_choices = resolved_param$choices, + xparam_selected = resolved_param$selected, + xparam_label = "Select a Biomarker", + xchoices = resolved_x$choices, + xselected = resolved_x$selected + ) + }) + anl_q_output <- constr_anl_q( session, input, data, dataname, param_id = "xaxis_param", param_var = param_var, trt_group = input$trt_group, min_rows = 2 diff --git a/R/tm_g_gh_lineplot.R b/R/tm_g_gh_lineplot.R index 64717ec5..b5ca9648 100644 --- a/R/tm_g_gh_lineplot.R +++ b/R/tm_g_gh_lineplot.R @@ -198,7 +198,8 @@ tm_g_gh_lineplot <- function(label, xtick = xtick, xlabel = xlabel, plot_height = plot_height, - plot_width = plot_width + plot_width = plot_width, + module_args = args ), ui = ui_lineplot, ui_args = args, @@ -226,13 +227,7 @@ ui_lineplot <- function(id, ...) { selected = a$trt_group$selected, multiple = FALSE ), - templ_ui_params_vars( - ns, - # xparam and yparam are identical, so we only show the user one - xparam_choices = a$param$choices, xparam_selected = a$param$selected, xparam_label = "Select a Biomarker", - xchoices = a$xaxis_var$choices, xselected = a$xaxis_var$selected, - ychoices = a$yaxis_var$choices, yselected = a$yaxis_var$selected - ), + uiOutput(ns("axis_selections")), uiOutput(ns("shape_ui")), radioButtons(ns("stat"), "Select a Statistic:", c("mean", "median"), a$stat), checkboxInput(ns("include_stat"), "Include Statistic Table", value = TRUE), @@ -328,7 +323,8 @@ srv_lineplot <- function(id, xtick, xlabel, plot_height, - plot_width) { + plot_width, + module_args) { with_reporter <- !missing(reporter) && inherits(reporter, "Reporter") with_filter <- !missing(filter_panel_api) && inherits(filter_panel_api, "FilterPanelAPI") checkmate::assert_class(data, "reactive") @@ -336,6 +332,25 @@ srv_lineplot <- function(id, moduleServer(id, function(input, output, session) { ns <- session$ns + + output$axis_selections <- renderUI({ + env <- shiny::isolate(as.list(data()@env)) + resolved_x <- teal.transform::resolve_delayed(module_args$xaxis_var, env) + resolved_y <- teal.transform::resolve_delayed(module_args$yaxis_var, env) + resolved_param <- teal.transform::resolve_delayed(module_args$param, env) + templ_ui_params_vars( + ns, + # xparam and yparam are identical, so we only show the user one + xparam_choices = resolved_param$choices, + xparam_selected = resolved_param$selected, + xparam_label = "Select a Biomarker", + xchoices = resolved_x$choices, + xselected = resolved_x$selected, + ychoices = resolved_y$choices, + yselected = resolved_y$selected + ) + }) + output$shape_ui <- renderUI({ if (!is.null(shape_choices)) { if (methods::is(shape_choices, "choices_selected")) { diff --git a/R/tm_g_gh_scatterplot.R b/R/tm_g_gh_scatterplot.R index 3d38120f..07b62898 100644 --- a/R/tm_g_gh_scatterplot.R +++ b/R/tm_g_gh_scatterplot.R @@ -175,7 +175,8 @@ tm_g_gh_scatterplot <- function(label, color_manual = color_manual, shape_manual = shape_manual, plot_height = plot_height, - plot_width = plot_width + plot_width = plot_width, + module_args = args ), ui = ui_g_scatterplot, ui_args = args @@ -200,13 +201,7 @@ ui_g_scatterplot <- function(id, ...) { selected = a$trt_group$selected, multiple = FALSE ), - templ_ui_params_vars( - ns, - # xparam and yparam are identical, so we only show the user one - xparam_choices = a$param$choices, xparam_selected = a$param$selected, xparam_label = "Select a Biomarker", - xchoices = a$xaxis_var$choices, xselected = a$xaxis_var$selected, - ychoices = a$yaxis_var$choices, yselected = a$yaxis_var$selected - ), + uiOutput(ns("axis_selections")), templ_ui_constraint(ns), # required by constr_anl_q teal.widgets::panel_group( teal.widgets::panel_item( @@ -263,13 +258,32 @@ srv_g_scatterplot <- function(id, color_manual, shape_manual, plot_height, - plot_width) { + plot_width, + module_args) { with_reporter <- !missing(reporter) && inherits(reporter, "Reporter") with_filter <- !missing(filter_panel_api) && inherits(filter_panel_api, "FilterPanelAPI") checkmate::assert_class(data, "reactive") checkmate::assert_class(shiny::isolate(data()), "teal_data") moduleServer(id, function(input, output, session) { + output$axis_selections <- renderUI({ + env <- shiny::isolate(as.list(data()@env)) + resolved_x <- teal.transform::resolve_delayed(module_args$xaxis_var, env) + resolved_y <- teal.transform::resolve_delayed(module_args$yaxis_var, env) + resolved_param <- teal.transform::resolve_delayed(module_args$param, env) + templ_ui_params_vars( + session$ns, + # xparam and yparam are identical, so we only show the user one + xparam_choices = resolved_param$choices, + xparam_selected = resolved_param$selected, + xparam_label = "Select a Biomarker", + xchoices = resolved_x$choices, + xselected = resolved_x$selected, + ychoices = resolved_y$choices, + yselected = resolved_y$selected + ) + }) + # reused in all modules anl_q_output <- constr_anl_q( session, input, data, dataname, diff --git a/R/tm_g_gh_spaghettiplot.R b/R/tm_g_gh_spaghettiplot.R index 6458fb0b..349de27a 100644 --- a/R/tm_g_gh_spaghettiplot.R +++ b/R/tm_g_gh_spaghettiplot.R @@ -222,7 +222,8 @@ tm_g_gh_spaghettiplot <- function(label, plot_height = plot_height, plot_width = plot_width, hline_vars_colors = hline_vars_colors, - hline_vars_labels = hline_vars_labels + hline_vars_labels = hline_vars_labels, + module_args = args ), ui = g_ui_spaghettiplot, ui_args = args, @@ -250,13 +251,7 @@ g_ui_spaghettiplot <- function(id, ...) { selected = a$trt_group$selected, multiple = FALSE ), - templ_ui_params_vars( - ns, - # xparam and yparam are identical, so we only show the user one - xparam_choices = a$param$choices, xparam_selected = a$param$selected, xparam_label = "Select a Biomarker", - xchoices = a$xaxis_var$choices, xselected = a$xaxis_var$selected, - ychoices = a$yaxis_var$choices, yselected = a$yaxis_var$selected - ), + uiOutput(ns("axis_selections")), radioButtons( ns("group_stats"), "Group Statistics", @@ -339,13 +334,32 @@ srv_g_spaghettiplot <- function(id, plot_height, plot_width, hline_vars_colors, - hline_vars_labels) { + hline_vars_labels, + module_args) { with_reporter <- !missing(reporter) && inherits(reporter, "Reporter") with_filter <- !missing(filter_panel_api) && inherits(filter_panel_api, "FilterPanelAPI") checkmate::assert_class(data, "reactive") checkmate::assert_class(shiny::isolate(data()), "teal_data") moduleServer(id, function(input, output, session) { + output$axis_selections <- renderUI({ + env <- shiny::isolate(as.list(data()@env)) + resolved_x <- teal.transform::resolve_delayed(module_args$xaxis_var, env) + resolved_y <- teal.transform::resolve_delayed(module_args$yaxis_var, env) + resolved_param <- teal.transform::resolve_delayed(module_args$param, env) + templ_ui_params_vars( + session$ns, + # xparam and yparam are identical, so we only show the user one + xparam_choices = resolved_param$choices, + xparam_selected = resolved_param$selected, + xparam_label = "Select a Biomarker", + xchoices = resolved_x$choices, + xselected = resolved_x$selected, + ychoices = resolved_y$choices, + yselected = resolved_y$selected + ) + }) + # reused in all modules anl_q_output <- constr_anl_q( session, input, data, dataname, From b146d0d2dabb8c1b4c1162de6bc762ee0cbd3a42 Mon Sep 17 00:00:00 2001 From: vedhav Date: Wed, 14 Feb 2024 21:15:13 +0530 Subject: [PATCH 6/6] fix: update the examples with proper usage of goshawk:::h_identify_loq_values --- R/tm_g_gh_boxplot.R | 2 +- R/tm_g_gh_correlationplot.R | 2 +- R/tm_g_gh_spaghettiplot.R | 2 +- man/tm_g_gh_boxplot.Rd | 2 +- man/tm_g_gh_correlationplot.Rd | 2 +- man/tm_g_gh_spaghettiplot.Rd | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/R/tm_g_gh_boxplot.R b/R/tm_g_gh_boxplot.R index 1219f4e6..3063779f 100644 --- a/R/tm_g_gh_boxplot.R +++ b/R/tm_g_gh_boxplot.R @@ -108,7 +108,7 @@ #' attr(ADLB[["ANRHI"]], "label") <- "Analysis Normal Range Upper Limit" #' #' # add LLOQ and ULOQ variables -#' ALB_LOQS <- goshawk:::h_identify_loq_values(ADLB) +#' ALB_LOQS <- goshawk:::h_identify_loq_values(ADLB, "LOQFL") #' ADLB <- dplyr::left_join(ADLB, ALB_LOQS, by = "PARAM") #' }) #' diff --git a/R/tm_g_gh_correlationplot.R b/R/tm_g_gh_correlationplot.R index 36eda220..6b1dfe24 100644 --- a/R/tm_g_gh_correlationplot.R +++ b/R/tm_g_gh_correlationplot.R @@ -130,7 +130,7 @@ #' attr(ADLB[["ANRLO"]], "label") <- "Analysis Normal Range Lower Limit" #' #' # add LLOQ and ULOQ variables -#' ADLB_LOQS <- goshawk:::h_identify_loq_values(ADLB) +#' ADLB_LOQS <- goshawk:::h_identify_loq_values(ADLB, "LOQFL") #' ADLB <- dplyr::left_join(ADLB, ADLB_LOQS, by = "PARAM") #' }) #' diff --git a/R/tm_g_gh_spaghettiplot.R b/R/tm_g_gh_spaghettiplot.R index 349de27a..899729a1 100644 --- a/R/tm_g_gh_spaghettiplot.R +++ b/R/tm_g_gh_spaghettiplot.R @@ -113,7 +113,7 @@ #' attr(ADLB[["ANRHI"]], "label") <- "Analysis Normal Range Upper Limit" #' #' # add LLOQ and ULOQ variables -#' ALB_LOQS <- goshawk:::h_identify_loq_values(ADLB) +#' ALB_LOQS <- goshawk:::h_identify_loq_values(ADLB, "LOQFL") #' ADLB <- dplyr::left_join(ADLB, ALB_LOQS, by = "PARAM") #' }) #' diff --git a/man/tm_g_gh_boxplot.Rd b/man/tm_g_gh_boxplot.Rd index 60a0f540..be5fb770 100644 --- a/man/tm_g_gh_boxplot.Rd +++ b/man/tm_g_gh_boxplot.Rd @@ -166,7 +166,7 @@ data <- within(data, { attr(ADLB[["ANRHI"]], "label") <- "Analysis Normal Range Upper Limit" # add LLOQ and ULOQ variables - ALB_LOQS <- goshawk:::h_identify_loq_values(ADLB) + ALB_LOQS <- goshawk:::h_identify_loq_values(ADLB, "LOQFL") ADLB <- dplyr::left_join(ADLB, ALB_LOQS, by = "PARAM") }) diff --git a/man/tm_g_gh_correlationplot.Rd b/man/tm_g_gh_correlationplot.Rd index 306f46e1..9afecf84 100644 --- a/man/tm_g_gh_correlationplot.Rd +++ b/man/tm_g_gh_correlationplot.Rd @@ -206,7 +206,7 @@ data <- within(data, { attr(ADLB[["ANRLO"]], "label") <- "Analysis Normal Range Lower Limit" # add LLOQ and ULOQ variables - ADLB_LOQS <- goshawk:::h_identify_loq_values(ADLB) + ADLB_LOQS <- goshawk:::h_identify_loq_values(ADLB, "LOQFL") ADLB <- dplyr::left_join(ADLB, ADLB_LOQS, by = "PARAM") }) diff --git a/man/tm_g_gh_spaghettiplot.Rd b/man/tm_g_gh_spaghettiplot.Rd index f5a72c83..8549cd93 100644 --- a/man/tm_g_gh_spaghettiplot.Rd +++ b/man/tm_g_gh_spaghettiplot.Rd @@ -182,7 +182,7 @@ data <- within(data, { attr(ADLB[["ANRHI"]], "label") <- "Analysis Normal Range Upper Limit" # add LLOQ and ULOQ variables - ALB_LOQS <- goshawk:::h_identify_loq_values(ADLB) + ALB_LOQS <- goshawk:::h_identify_loq_values(ADLB, "LOQFL") ADLB <- dplyr::left_join(ADLB, ALB_LOQS, by = "PARAM") })