The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
{sdtm.terminology}
is an R data package providing CDISC
SDTM terminology.
CDISC SDTM Controlled Terminology refers to a standardized set of terms developed by the Clinical Data Interchange Standards Consortium (CDISC) specifically for use with the Standard Data Tabulation Model (SDTM). Controlled terminology provides a consistent vocabulary for coding various types of data that are collected during clinical trials. This standardization is crucial for ensuring that data from different studies, sponsors, and sites can be understood, compared, and analyzed in a consistent manner.
In addition to supplying SDTM terminology data, this package includes several utility functions designed to facilitate the conversion between codes and terms, as well as to verify the association of terms with specific code lists.
install.packages("sdtm.terminology")
The current controlled terminology release bundled with this package is:
# SDTM controlled terminology version
ct_release()
#> [1] "2025-03-25"
The function ct()
returns SDTM terminology as a tidy
dataset, one row per concept.
# SDTM terms (other than code lists)
ct()
#> # A tibble: 43,698 × 7
#> clst_code code term name syn def nci
#> <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 C141657 C174106 TENMW101 10-Met… TENM… 10-M… 10-M…
#> 2 C141657 C141700 TENMW102 10-Met… TENM… 10-M… 10-M…
#> 3 C141657 C147592 TENMW103 10-Met… TENM… 10-M… 10-M…
#> 4 C141657 C141701 TENMW104 10-Met… TENM… 10-M… 10-M…
#> 5 C141656 C141701 TENMW1-Test Grade 10-Met… TENM… 10-M… 10-M…
#> 6 C141656 C141700 TENMW1-Time to Walk/Run 10 Meters 10-Met… TENM… 10-M… 10-M…
#> 7 C141656 C174106 TENMW1-Was Walk/Run Performed 10-Met… TENM… 10-M… 10-M…
#> 8 C141656 C147592 TENMW1-Wear Orthoses 10-Met… TENM… 10-M… 10-M…
#> 9 C141663 C174103 A4STR101 4-Stai… A4ST… 4-St… 4-St…
#> 10 C141663 C141706 A4STR102 4-Stai… A4ST… 4-St… 4-St…
#> # ℹ 43,688 more rows
# SDTM code lists
ct("list")
#> # A tibble: 1,158 × 9
#> clst_code is_clst code term ext name syn def nci
#> <chr> <lgl> <chr> <chr> <lgl> <chr> <chr> <chr> <chr>
#> 1 C141657 TRUE C141657 TENMW1TC FALSE 10-Meter Wal… 10-M… 10-M… CDIS…
#> 2 C141656 TRUE C141656 TENMW1TN FALSE 10-Meter Wal… 10-M… 10-M… CDIS…
#> 3 C141663 TRUE C141663 A4STR1TC FALSE 4-Stair Asce… 4-St… 4-St… CDIS…
#> 4 C141662 TRUE C141662 A4STR1TN FALSE 4-Stair Asce… 4-St… 4-St… CDIS…
#> 5 C141661 TRUE C141661 D4STR1TC FALSE 4-Stair Desc… 4-St… 4-St… CDIS…
#> 6 C141660 TRUE C141660 D4STR1TN FALSE 4-Stair Desc… 4-St… 4-St… CDIS…
#> 7 C115388 TRUE C115388 SIXMW1TC FALSE 6 Minute Wal… 6 Mi… 6 Mi… CDIS…
#> 8 C115387 TRUE C115387 SIXMW1TN FALSE 6 Minute Wal… 6 Mi… 6 Mi… CDIS…
#> 9 C182464 TRUE C182464 AIMS0101T07OR FALSE Abnormal Inv… Abno… Abno… CDIS…
#> 10 C182465 TRUE C182465 AIMS0108T09OR FALSE Abnormal Inv… Abno… Abno… CDIS…
#> # ℹ 1,148 more rows
# SDTM terminology individual terms and code list terms.
ct("all")
#> # A tibble: 44,856 × 9
#> clst_code is_clst code term ext name syn def nci
#> <chr> <lgl> <chr> <chr> <lgl> <chr> <chr> <chr> <chr>
#> 1 C141657 TRUE C141657 TENMW1TC FALSE 10-M… 10-M… 10-M… CDIS…
#> 2 C141657 FALSE C174106 TENMW101 NA 10-M… TENM… 10-M… 10-M…
#> 3 C141657 FALSE C141700 TENMW102 NA 10-M… TENM… 10-M… 10-M…
#> 4 C141657 FALSE C147592 TENMW103 NA 10-M… TENM… 10-M… 10-M…
#> 5 C141657 FALSE C141701 TENMW104 NA 10-M… TENM… 10-M… 10-M…
#> 6 C141656 TRUE C141656 TENMW1TN FALSE 10-M… 10-M… 10-M… CDIS…
#> 7 C141656 FALSE C141701 TENMW1-Test Grade NA 10-M… TENM… 10-M… 10-M…
#> 8 C141656 FALSE C141700 TENMW1-Time to Walk/… NA 10-M… TENM… 10-M… 10-M…
#> 9 C141656 FALSE C174106 TENMW1-Was Walk/Run … NA 10-M… TENM… 10-M… 10-M…
#> 10 C141656 FALSE C147592 TENMW1-Wear Orthoses NA 10-M… TENM… 10-M… 10-M…
#> # ℹ 44,846 more rows
Convert terms to codes and codes to terms, and determine if a term is included in a terminology code list:
# Convert a code list term to respective C-code and back again
clst_term_to_code("UNIT")
#> [1] "C71620"
clst_code_to_term("C71620")
#> [1] "UNIT"
# Are "%" and "%/s" terms from the UNIT code list?
is_term(c("%", "%/s"), clst_term_to_code("UNIT"))
#> [1] TRUE TRUE
# Find "%" and "%/s" codes within C71620 code list.
term_to_code(c("%", "%/s"), "C71620")
#> [1] "C25613" "C163560"
# It seems "%" is also a term in the VSRESU code list but not "%/s".
is_term(c("%", "%/s"), clst_term_to_code("VSRESU"))
#> [1] TRUE FALSE
# Or, equivalently, query using codes instead...
is_code(c("C25613", "C163560"), clst_term_to_code("VSRESU"))
#> [1] TRUE FALSE
# Find which code lists contain the terms "DNA" or "RNA"
match_code_list_from_term(c("DNA", "RNA"))
#> # A tibble: 6 × 3
#> code term clst_code
#> <chr> <chr> <chr>
#> 1 C184459 DNA C101832
#> 2 C449 DNA C111114
#> 3 C135409 DNA C65047
#> 4 C184459 DNA C163027
#> 5 C812 RNA C111114
#> 6 C132301 RNA C65047
# Round trip from terms to codes to parent code list codes...
match_code_list_from_code(term_to_code(c("%", "%/s"), "C71620"))
#> # A tibble: 4 × 3
#> code term clst_code
#> <chr> <chr> <chr>
#> 1 C25613 % C85494
#> 2 C25613 % C71620
#> 3 C25613 % C66770
#> 4 C163560 %/s C71620
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.