Skip to contents

Compare a subject ID vector to the study's reference subject ID (usually something like enrolres$subjid), and warn if any patient is missing or extra.
check_subjid() is the old, deprecated name.

Usage

edc_warn_patient_diffs(
  x,
  ref = getOption("edc_subjid_ref"),
  issue_n = "xx",
  data_name = NULL,
  col_subjid = get_subjid_cols()
)

Arguments

x

the subject ID vector to check, or a dataframe which ID column will be guessed

ref

the reference for subject ID. Should usually be set through edc_options(edc_subjid_ref=xxx). See example.

issue_n

identifying row number

data_name

the name of the data (for the warning message)

col_subjid

name of the subject ID column if x is a dataframe.

Value

nothing, called for errors/warnings

Examples

tm = edc_example()
#> Warning: Option "edc_lookup" has been overwritten.
load_list(tm)
options(edc_subjid_ref=db0$SUBJID)
#usually, you set something like:
#options(edc_subjid_ref=enrolres$subjid)
edc_warn_patient_diffs(db1)
db1 %>% dplyr::filter(SUBJID>1) %>% edc_warn_patient_diffs()
#> Warning: In `edc_warn_patient_diffs()`, `data_name` should not be NULL if `issue_n` is
#> not NULL and function is piped, otherwise the message will be unreadable.
#> Warning: Issue #xx: `.` has patient discrepancies:
#>  Missing: 1 patient: #1
edc_warn_patient_diffs(c(db1$SUBJID, 99, 999))
#> Warning: Issue #xx: `c(db1$SUBJID, 99, 999)` has patient discrepancies:
#>  Extra: 2 patients: #99 and #999