This function checks if the variable names match between the data dictionary and the data.
Arguments
- DD.dict
Data dictionary.
- DS.data
Data set.
- verbose
When TRUE, the function prints the Message out, as well as a list of the non-matching variable names.
Value
Tibble, returned invisibly, containing: (1) Time (time stamp); (2) Name (name of the function); (3) Status (Passed/Failed); (4) Message (A copy of the message the function printed out); (5) Information (Names of variables that mismatch between the data and data dictionary).
Examples
# Example 1: Fail check (name mismatch)
data(ExampleM)
name_check(DD.dict.M, DS.data.M)
#> $Message
#> [1] "ERROR: the variable names DO NOT match between the data dictionary and the data. If the intention behind the variable names is correct, consider using the name_correct function to automatically rename variables to match."
#>
#> $Information
#> # A tibble: 2 × 2
#> Data Dict
#> <chr> <chr>
#> 1 Data: SMOKING_HX Dict: SMOKING_HISTORY
#> 2 Data: HX_DEPRESSION Dict: DEPRESSION_HX
#>
DS.data_updated <- name_correct(DD.dict.M, DS.data.M)
#> $Message
#> [1] "CORRECTED ERROR: the variable names differ between the data dictionary and the data. **ALERT** Renaming variable(s) to match those listed in the data dictionary."
#>
#> $Information
#> # A tibble: 2 × 3
#> Data Dict New.Data
#> <chr> <chr> <chr>
#> 1 Original data name: SMOKING_HX Dictionary name: SMOKING_HISTORY New data n…
#> 2 Original data name: HX_DEPRESSION Dictionary name: DEPRESSION_HX New data n…
#>
name_check(DD.dict.M, DS.data_updated)
#> $Message
#> [1] "Passed: the variable names match between the data dictionary and the data."
#>
#> $Information
#> [1] "Variable names matched"
#>
# Example 2: Pass check
data(ExampleA)
name_check(DD.dict.A, DS.data.A)
#> $Message
#> [1] "Passed: the variable names match between the data dictionary and the data."
#>
#> $Information
#> [1] "Variable names matched"
#>
print(name_check(DD.dict.A, DS.data.A, verbose=FALSE))
#> # A tibble: 1 × 5
#> Time Function Status Message Information
#> <dttm> <chr> <chr> <chr> <named lis>
#> 1 2023-09-27 11:01:19 name_check Passed Passed: the variable names … <chr [1]>