Skip to contents

Create paginated tables from PKNCA to use in reports and Shiny apps.

Usage

mk_table_nca_params(
  nca_res,
  type = "individual",
  grouping = "interval",
  not_calc = "NC",
  obnd = NULL,
  nps = NULL,
  mult_str = "*",
  infinity = "inf",
  digits = NULL,
  text_format = "text",
  notes_detect = NULL,
  max_height = 7,
  max_width = 6.5,
  max_row = NULL,
  max_col = NULL
)

Arguments

nca_res

Output of PKNCA.

type

Type of table to generate. Can be either "individual" or "summary"].

grouping

How to group columns in tables. Can be either "interval" or "parameter"].

not_calc

Text string to replace NA values with to indicated values were not calculated.

obnd

onbrand reporting object.

nps

NCA parameter summary table with the following columns.

  • parameter: PKNCA Paramter name.

  • text: Name used in text output.

  • md: Name used markdown output.

  • latex: Name used in latex output.

  • description: Verbose textual description of the parameter.

mult_str

Text string to replace * values in units.

infinity

Text string to replace infinity in time intervals in column headers.

digits

Number of significant figures to report (set to NULL to disable rounding)

text_format

Either "md" for markdown or "text" (default) for plain text.

notes_detect

Vector of strings to detect in output tables (example c("NC", "BLQ")).

max_height

Maximum height of the final table in inches (A value of NULL will use 100 inches).

max_width

Maximum width of the final table in inches (A value of NULL will use 100 inches).

max_row

Maximum number of rows to have on a page. Spillover will hang over the side of the page..

max_col

Maximum number of columns to have on a page. Spillover will be wrapped to multiple pages.

Value

list containing the following elements

  • raw_nca: Raw PKNCA output.

  • isgood: Boolean indicating the exit status of the function.

  • one_table: Dataframe of the entire table with the first lines containing the header.

  • one_body: Dataframe of the entire table (data only).

  • one_header: Dataframe of the entire header (row and body, no data).

  • tables: Named list of tables. Each list element is of the output

  • msgs: Vector of text messages describing any errors that were found. format from build_span.

Examples

id     = "NCA"
id_UD  = "UD"
id_DW  = "DW"
id_ASM = "ASM"

# We need a state variable to be define
sess_res = NCA_test_mksession(session=list(),
     id     = id,
     id_UD  = id_UD,
     id_DW  = id_DW,
     id_ASM = id_ASM,
     full_session=FALSE)
#> → UD: including file
#> → UD:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → UD:   dest:   file.path("config","report.docx")
#> → UD: including file
#> → UD:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → UD:   dest:   file.path("config","report.pptx")
#> → UD: including file
#> → UD:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → UD:   dest:   file.path("config","report.yaml")
#> → UD: State initialized
#> → UD: module checksum updated:897d952fecbc804999396a96f9df4b20
#> → DW: including file
#> → DW:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → DW:   dest:   file.path("config","report.docx")
#> → DW: including file
#> → DW:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → DW:   dest:   file.path("config","report.pptx")
#> → DW: including file
#> → DW:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → DW:   dest:   file.path("config","report.yaml")
#> → DW: State initialized
#> → DW: module checksum updated:5b0f0b05ee3ac7336a74c564bb6efdad
#> → DW: module checksum updated:65801ab4b3c645aabf7edf91fc2f0d2c
#> → DW: module checksum updated:7fb2dd3b16b1780c4c24f64d658dd7c7
#> → DW: module checksum updated:5ab04ea00be44c0040695a4ed6243c90
#> → DW: module checksum updated:960db107cfe9db93578f79f0ae6283e2
#> → DW: module checksum updated:f0b5d122dcb04f207cba233253b61c4b
#> → DW: module checksum updated:189ed77a84bd9fcdd7b26abff8bea34a
#> → DW: module checksum updated:669ec77d50652669cd3fcfd949469b37
#> → DW: module checksum updated:dd6cafa0be3b6b195d230a11e9f07f9f
#> → DW: module checksum updated:5c2022c376ca8f56b839347156559890
#> → DW: module checksum updated:43640500a04674debd8e2399056c384a
#> → DW: module checksum updated:f81c45ac1ef4e7b43153d8c8eaf7aed6
#> → DW: module checksum updated:207cde891d98e20c4afbb7fb5fb0aba2
#> → DW: module checksum updated:0a673e81c01cbbf33533dd65d6baf9e3
#> → DW: module checksum updated:af3f3aefd0115ed9dfdd4d6ef9d5182f
#> → DW: module checksum updated:b0ccaee21e859322df0bf79d00c4b347
#> → DW: module checksum updated:2d3d6e9e38be6dea813b2d4d679e34b5
#> → DW: module checksum updated:2b60dd49b48a4e65200dc7241ad270e3
#> → DW: module checksum updated:3c92f397181a4fcdbdf2bd7dd7425e77
#> → DW: module checksum updated:92b81d7573def603649370b87c123b55
#> → DW: module checksum updated:9210264aabc0339e832b0c6bcfda32af
#> → DW: module checksum updated:fe62fde1e7e738a1a35c479de9d5007b
#> → DW: module checksum updated:ff3edcd4c1e58c96ea2707361916ffbc
#> → DW: module checksum updated:b6cdfcef0432c5d9b1fa2bd46122ffa2
#> → DW: module checksum updated:4fa4283f1fd8fd6cf6e6e7df0669723a
#> → DW: module checksum updated:cf3e139cef554b2d09dca619ee6aff41
#> → DW: module checksum updated:a9154d91a9e4b5d21f9585a6f68dd083
#> → DW: module checksum updated:4b5c6ad66658ddfa92d10ae1b0b7afa8
#> → DW: module checksum updated:591ac875a490b66a1fa7f4e7d4ba1c62
#> → DW: module checksum updated:afa3ca309cc3e6a48f542f4e8eadd54a
#> → DW: module checksum updated:5c918dd4f53a4f1e56115abb09c4f332
#> → DW: module checksum updated:159ddf8c8cd26b178dfda5434bbecfa1
#> → DW: module checksum updated:8bb3c97e700998f2f73353189bd07831
#> → DW: module checksum updated:a1eceffec3ff7d9f9961683b3d07088b
#> → NCA: including file
#> → NCA:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → NCA:   dest:   file.path("config","report.docx")
#> → NCA: including file
#> → NCA:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → NCA:   dest:   file.path("config","report.pptx")
#> → NCA: including file
#> → NCA:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → NCA:   dest:   file.path("config","report.yaml")
#>  NCA: Parameter specified in YAML is not a valid PKNCA parameter: sparse_se
#>  NCA: Parameter specified in YAML is not a valid PKNCA parameter: sparse_df
#> → NCA: including file
#> → NCA:   source: file.path(system.file(package="onbrand"), "templates", "report.docx")
#> → NCA:   dest:   file.path("config","report.docx")
#> → NCA: including file
#> → NCA:   source: file.path(system.file(package="onbrand"), "templates", "report.pptx")
#> → NCA:   dest:   file.path("config","report.pptx")
#> → NCA: including file
#> → NCA:   source: file.path(system.file(package="onbrand"), "templates", "report.yaml")
#> → NCA:   dest:   file.path("config","report.yaml")
#> → NCA: State initialized
#> → NCA: State initialized
#> → NCA: loading analysis scenario: sd_iv
#> → NCA: NCA_add_int: append
#> → NCA: NCA_add_int: append
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> → NCA: module checksum updated:23b21dc37aed7cfaa8a240049994e1df

state = sess_res$state

# Pulls out the active analysis
current_ana = NCA_fetch_current_ana(state)

# This is the raw PKNCA output
pknca_res = NCA_fetch_ana_pknca(state, current_ana)

# Parameter reporting details from the ruminate configuration
nps  = state[["NCA"]][["nca_parameters"]][["summary"]]

# Building the figure
mk_res = mk_table_nca_params(nca_res = pknca_res, nps=nps, digits=3)
mk_res$tables[["Table 1"]]$ft

ID

AUClast

Cmax

AUCinf,obs

day*ng/mL

ng/mL

day*ng/mL

[0,21]

[0,inf]

1

5,900

690

9,590

2

8,240

750

17,000

3

6,140

670

9,520