Adds a Parameter for Corrected QT (an ECG measurement)
Source:R/derive_adeg_params.R
derive_param_qtc.Rd
Adds a record for corrected QT using either Bazett's, Fridericia's or Sagie's formula for each by group (e.g., subject and visit) where the source parameters are available.
Note: This is a wrapper function for the more generic derive_param_computed()
.
Usage
derive_param_qtc(
dataset,
by_vars,
method,
set_values_to = default_qtc_paramcd(method),
qt_code = "QT",
rr_code = "RR",
get_unit_expr,
filter = NULL
)
Arguments
- dataset
Input dataset
The variables specified by the
by_vars
andget_unit_expr
arguments are expected to be in the dataset.PARAMCD
, andAVAL
are expected as well.The variable specified by
by_vars
andPARAMCD
must be a unique key of the input dataset after restricting it by the filter condition (filter
parameter) and to the parameters specified byqt_code
andrr_code
.- by_vars
Grouping variables
Only variables specified in
by_vars
will be populated in the newly created records.Permitted Values: list of variables created by
exprs()
e.g.exprs(USUBJID, VISIT)
- method
Method used to QT correction
Permitted Values:
"Bazett"
,"Fridericia"
,"Sagie"
- set_values_to
Variables to be set
The specified variables are set to the specified values for the new observations. For example
exprs(PARAMCD = "MAP")
defines the parameter code for the new parameter.Permitted Values: List of variable-value pairs
- qt_code
QT parameter code
The observations where
PARAMCD
equals the specified value are considered as the QT interval assessments. It is expected that QT is measured in msec.Permitted Values: character value
- rr_code
RR parameter code
The observations where
PARAMCD
equals the specified value are considered as the RR interval assessments. It is expected that RR is measured in msec.Permitted Values: character value
- get_unit_expr
An expression providing the unit of the parameter
The result is used to check the units of the input parameters.
Permitted Values: A variable of the input dataset or a function call
- filter
Filter condition
The specified condition is applied to the input dataset before deriving the new parameter, i.e., only observations fulfilling the condition are taken into account.
Permitted Values: a condition
Value
The input dataset with the new parameter added. Note, a variable will only
be populated in the new parameter rows if it is specified in by_vars
.
See also
BDS-Findings Functions for adding Parameters/Records:
default_qtc_paramcd()
,
derive_expected_records()
,
derive_extreme_event()
,
derive_extreme_records()
,
derive_locf_records()
,
derive_param_bmi()
,
derive_param_bsa()
,
derive_param_computed()
,
derive_param_doseint()
,
derive_param_exist_flag()
,
derive_param_exposure()
,
derive_param_framingham()
,
derive_param_map()
,
derive_param_rr()
,
derive_param_wbc_abs()
,
derive_summary_records()
Examples
library(tibble)
adeg <- tribble(
~USUBJID, ~PARAMCD, ~PARAM, ~AVAL, ~AVALU, ~VISIT,
"01-701-1015", "HR", "Heart Rate (beats/min)", 70.14, "beats/min", "BASELINE",
"01-701-1015", "QT", "QT Duration (msec)", 370, "msec", "WEEK 2",
"01-701-1015", "HR", "Heart Rate (beats/min)", 62.66, "beats/min", "WEEK 1",
"01-701-1015", "RR", "RR Duration (msec)", 710, "msec", "WEEK 2",
"01-701-1028", "HR", "Heart Rate (beats/min)", 85.45, "beats/min", "BASELINE",
"01-701-1028", "QT", "QT Duration (msec)", 480, "msec", "WEEK 2",
"01-701-1028", "QT", "QT Duration (msec)", 350, "msec", "WEEK 3",
"01-701-1028", "HR", "Heart Rate (beats/min)", 56.54, "beats/min", "WEEK 3",
"01-701-1028", "RR", "RR Duration (msec)", 842, "msec", "WEEK 2",
)
derive_param_qtc(
adeg,
by_vars = exprs(USUBJID, VISIT),
method = "Bazett",
set_values_to = exprs(
PARAMCD = "QTCBR",
PARAM = "QTcB - Bazett's Correction Formula Rederived (msec)",
AVALU = "msec"
),
get_unit_expr = AVALU
)
#> # A tibble: 11 × 6
#> USUBJID PARAMCD PARAM AVAL AVALU VISIT
#> <chr> <chr> <chr> <dbl> <chr> <chr>
#> 1 01-701-1015 HR Heart Rate (beats/min) 70.1 beat… BASE…
#> 2 01-701-1015 QT QT Duration (msec) 370 msec WEEK…
#> 3 01-701-1015 HR Heart Rate (beats/min) 62.7 beat… WEEK…
#> 4 01-701-1015 RR RR Duration (msec) 710 msec WEEK…
#> 5 01-701-1028 HR Heart Rate (beats/min) 85.4 beat… BASE…
#> 6 01-701-1028 QT QT Duration (msec) 480 msec WEEK…
#> 7 01-701-1028 QT QT Duration (msec) 350 msec WEEK…
#> 8 01-701-1028 HR Heart Rate (beats/min) 56.5 beat… WEEK…
#> 9 01-701-1028 RR RR Duration (msec) 842 msec WEEK…
#> 10 01-701-1015 QTCBR QTcB - Bazett's Correction Formula Red… 439. msec WEEK…
#> 11 01-701-1028 QTCBR QTcB - Bazett's Correction Formula Red… 523. msec WEEK…
derive_param_qtc(
adeg,
by_vars = exprs(USUBJID, VISIT),
method = "Fridericia",
set_values_to = exprs(
PARAMCD = "QTCFR",
PARAM = "QTcF - Fridericia's Correction Formula Rederived (msec)",
AVALU = "msec"
),
get_unit_expr = extract_unit(PARAM)
)
#> # A tibble: 11 × 6
#> USUBJID PARAMCD PARAM AVAL AVALU VISIT
#> <chr> <chr> <chr> <dbl> <chr> <chr>
#> 1 01-701-1015 HR Heart Rate (beats/min) 70.1 beat… BASE…
#> 2 01-701-1015 QT QT Duration (msec) 370 msec WEEK…
#> 3 01-701-1015 HR Heart Rate (beats/min) 62.7 beat… WEEK…
#> 4 01-701-1015 RR RR Duration (msec) 710 msec WEEK…
#> 5 01-701-1028 HR Heart Rate (beats/min) 85.4 beat… BASE…
#> 6 01-701-1028 QT QT Duration (msec) 480 msec WEEK…
#> 7 01-701-1028 QT QT Duration (msec) 350 msec WEEK…
#> 8 01-701-1028 HR Heart Rate (beats/min) 56.5 beat… WEEK…
#> 9 01-701-1028 RR RR Duration (msec) 842 msec WEEK…
#> 10 01-701-1015 QTCFR QTcF - Fridericia's Correction Formula… 415. msec WEEK…
#> 11 01-701-1028 QTCFR QTcF - Fridericia's Correction Formula… 508. msec WEEK…
derive_param_qtc(
adeg,
by_vars = exprs(USUBJID, VISIT),
method = "Sagie",
set_values_to = exprs(
PARAMCD = "QTLCR",
PARAM = "QTlc - Sagie's Correction Formula Rederived (msec)",
AVALU = "msec"
),
get_unit_expr = extract_unit(PARAM)
)
#> # A tibble: 11 × 6
#> USUBJID PARAMCD PARAM AVAL AVALU VISIT
#> <chr> <chr> <chr> <dbl> <chr> <chr>
#> 1 01-701-1015 HR Heart Rate (beats/min) 70.1 beat… BASE…
#> 2 01-701-1015 QT QT Duration (msec) 370 msec WEEK…
#> 3 01-701-1015 HR Heart Rate (beats/min) 62.7 beat… WEEK…
#> 4 01-701-1015 RR RR Duration (msec) 710 msec WEEK…
#> 5 01-701-1028 HR Heart Rate (beats/min) 85.4 beat… BASE…
#> 6 01-701-1028 QT QT Duration (msec) 480 msec WEEK…
#> 7 01-701-1028 QT QT Duration (msec) 350 msec WEEK…
#> 8 01-701-1028 HR Heart Rate (beats/min) 56.5 beat… WEEK…
#> 9 01-701-1028 RR RR Duration (msec) 842 msec WEEK…
#> 10 01-701-1015 QTLCR QTlc - Sagie's Correction Formula Rede… 415. msec WEEK…
#> 11 01-701-1028 QTLCR QTlc - Sagie's Correction Formula Rede… 504. msec WEEK…