Easy data set to data base workflow +
+THe first iteration of a dataset to data dictionary function is the
+ds2dd()
, which creates a very basic data dictionary with
+all variables stored as text. This is sufficient for just storing old
+datasets/spreadsheets securely in REDCap.
The more advanced ds2dd_detailed()
is a natural
+development. It will try to apply the most common data classes for data
+validation and will assume that the first column is the id number. It
+outputs a list with the dataset with modified variable names to comply
+with REDCap naming conventions and a data dictionary.
The dataset should be correctly formatted for the data dictionary to +preserve as much information as possible.
+
+dd_ls <- mtcars |>
+ dplyr::mutate(record_id = seq_len(dplyr::n())) |>
+ dplyr::select(record_id, dplyr::everything()) |>
+ ds2dd_detailed()
+dd_ls |> str()
Additional specifications to the DataDictionary can be made manually, +or it can be uploaded and modified manually in the graphical user +interface on the web page.
+Step 3 - Meta data upload +
+Now the DataDictionary can be exported as a spreadsheet and uploaded
+or it can be uploaded using the REDCapR
package (only
+projects with “Development” status).
Use one of the two approaches below:
+Manual upload +
+
+write.csv(dd_ls$meta, "datadictionary.csv")
Upload with REDCapR
+
+
+REDCapR::redcap_metadata_write(
+ dd_ls$meta,
+ redcap_uri = keyring::key_get("DB_URI"),
+ token = keyring::key_get("DB_TOKEN")
+)
In the “REDCap R
+Handbook” more is written on interfacing with REDCap in R using the
+library(keyring)
to store credentials in chapter
+1.1.
Step 4 - Data upload +
+The same two options are available for data upload as meta data
+upload: manual or through REDCapR
.
Only the latter is shown here.
+
+REDCapR::redcap_write(
+ dd_ls$data,
+ redcap_uri = keyring::key_get("DB_URI"),
+ token = keyring::key_get("DB_TOKEN")
+)