Learn R Programming

REDCapR (version 0.9.8)

validate: Inspect a base::data.frame() to anticipate problems before writing to a REDCap project.

Description

This set of functions inspect a base::data.frame() to anticipate problems before writing with REDCap's API.

Usage

validate_for_write( d )

validate_no_logical( data_types, stop_on_error )

validate_field_names( field_names, stop_on_error )

Arguments

data_types

The data types of the base::data.frame() corresponding to the REDCap project.

stop_on_error

If TRUE, an error is thrown for violations. Otherwise, a dataset summarizing the problems is returned.

d

The base::data.frame() containing the dataset used to update the REDCap project.

field_names

The names of the fields/variables in the REDCap project.

Value

A tibble::tibble(), where each potential violation is a row. The two columns are:

  • field_name: The name of the base::data.frame() that might cause problems during the upload.

  • field_index: The position of the field. (For example, a value of '1' indicates the first column, while a '3' indicates the third column.)

  • concern: A description of the problem potentially caused by the field.

  • suggestion: A potential solution to the concern.

Details

All functions listed in the Usage section above inspect a specific aspect of the dataset. The validate_for_write() function executes all these individual validation checks. It allows the client to check everything with one call.

References

The official documentation can be found on the 'API Help Page' and 'API Examples' pages on the REDCap wiki (ie, https://community.projectredcap.org/articles/456/api-documentation.html and https://community.projectredcap.org/articles/462/api-examples.html). If you do not have an account for the wiki, please ask your campus REDCap administrator to send you the static material.

Examples

Run this code
# NOT RUN {
d <- data.frame(
  record_id      = 1:4,
  flag_logical   = c(TRUE, TRUE, FALSE, TRUE),
  flag_Uppercase = c(4, 6, 8, 2)
)
validate_for_write(d = d)
# }

Run the code above in your browser using DataLab