Skip to contents

[Stable]

[Stable]

Usage

scda_dataset_connector(
  dataname,
  scda_dataname = tolower(dataname),
  scda_name = "latest",
  keys = character(0),
  label = character(0),
  code = character(0),
  script = character(0),
  metadata = list(type = "scda", version = scda_name)
)

scda_cdisc_dataset_connector(
  dataname,
  scda_dataname = tolower(dataname),
  scda_name = "latest",
  keys = get_cdisc_keys(dataname),
  parent = if (identical(dataname, "ADSL")) character(0L) else "ADSL",
  label = character(0),
  code = character(0),
  script = character(0),
  metadata = list(type = "scda", version = scda_name)
)

Arguments

dataname

(character)
A given name for the dataset it may not contain spaces

scda_dataname

(character) which scda dataset to use (e.g. adsl).

scda_name

(character) which version of scda data to take, default "latest".

keys

optional, (character)
vector of dataset primary keys column names

label

(character)
Label to describe the dataset.

code

(character)
A character string defining code to modify raw_data from this dataset. To modify current dataset code should contain at least one assignment to object defined in dataname argument. For example if dataname = ADSL example code should contain ADSL <- <some R code>. Can't be used simultaneously with script

script

(character)
Alternatively to code - location of the file containing modification code. Can't be used simultaneously with script.

metadata

(named list, NULL or CallableFunction)
Field containing either the metadata about the dataset (each element of the list should be atomic and length one) or a CallableFuntion to pull the metadata from a connection. This should return a list or an object which can be converted to a list with as.list.

parent

(character, optional) parent dataset name

Details

Create a TealDatasetConnector for dataset in scda

Create a CDISCTealDatasetConnector from scda data

Examples

library(scda)
x <- scda_dataset_connector(
  dataname = "ADSL", scda_dataname = "adsl",
)
x$get_code()
#> [1] "ADSL <- scda::synthetic_cdisc_dataset(dataset_name = \"adsl\", name = \"latest\")"
load_dataset(x)
get_dataset(x)
#> A TealDataset object containing the following data.frame (400 rows and 44 columns):
#>   STUDYID               USUBJID SUBJID SITEID AGE  AGEU SEX
#> 1 AB12345  AB12345-CHN-3-id-128 id-128  CHN-3  32 YEARS   M
#> 2 AB12345 AB12345-CHN-15-id-262 id-262 CHN-15  35 YEARS   M
#> 3 AB12345  AB12345-RUS-3-id-378 id-378  RUS-3  30 YEARS   F
#> 4 AB12345 AB12345-CHN-11-id-220 id-220 CHN-11  26 YEARS   F
#> 5 AB12345  AB12345-CHN-7-id-267 id-267  CHN-7  40 YEARS   M
#> 6 AB12345 AB12345-CHN-15-id-201 id-201 CHN-15  49 YEARS   M
#>                        RACE                 ETHNIC COUNTRY DTHFL         INVID
#> 1                     ASIAN NOT HISPANIC OR LATINO     CHN     N  INV ID CHN-3
#> 2 BLACK OR AFRICAN AMERICAN NOT HISPANIC OR LATINO     CHN     N INV ID CHN-15
#> 3                     ASIAN NOT HISPANIC OR LATINO     RUS     N  INV ID RUS-3
#> 4                     ASIAN NOT HISPANIC OR LATINO     CHN     N INV ID CHN-11
#> 5                     ASIAN                UNKNOWN     CHN     N  INV ID CHN-7
#> 6                     ASIAN NOT HISPANIC OR LATINO     CHN     N INV ID CHN-15
#>           INVNAM            ARM ARMCD         ACTARM ACTARMCD         TRT01P
#> 1  Dr. CHN-3 Doe      A: Drug X ARM A      A: Drug X    ARM A      A: Drug X
#> 2 Dr. CHN-15 Doe C: Combination ARM C C: Combination    ARM C C: Combination
#> 3  Dr. RUS-3 Doe C: Combination ARM C C: Combination    ARM C C: Combination
#> 4 Dr. CHN-11 Doe     B: Placebo ARM B     B: Placebo    ARM B     B: Placebo
#> 5  Dr. CHN-7 Doe     B: Placebo ARM B     B: Placebo    ARM B     B: Placebo
#> 6 Dr. CHN-15 Doe C: Combination ARM C C: Combination    ARM C C: Combination
#>           TRT01A REGION1 STRATA1 STRATA2    BMRKR1 BMRKR2 ITTFL SAFFL BMEASIFL
#> 1      A: Drug X    Asia       C      S2 14.424934 MEDIUM     Y     Y        Y
#> 2 C: Combination    Asia       C      S1  4.055463    LOW     Y     Y        N
#> 3 C: Combination Eurasia       A      S1  2.803240   HIGH     Y     Y        Y
#> 4     B: Placebo    Asia       B      S2 10.262734 MEDIUM     Y     Y        Y
#> 5     B: Placebo    Asia       C      S1  6.206763    LOW     Y     Y        N
#> 6 C: Combination    Asia       C      S2  6.906799 MEDIUM     Y     Y        Y
#>   BEP01FL     RANDDT             TRTSDTM             TRTEDTM       EOSSTT
#> 1       Y 2019-02-22 2019-02-24 11:09:18 2021-02-23 22:47:42    COMPLETED
#> 2       N 2019-02-26 2019-02-26 09:05:00 2021-02-25 20:43:24    COMPLETED
#> 3       N 2019-02-24 2019-02-28 03:19:08 2021-02-27 14:57:32    COMPLETED
#> 4       Y 2019-02-27 2019-03-01 13:33:03 2021-03-01 01:11:27    COMPLETED
#> 5       N 2019-03-01 2019-03-02 00:09:16 2021-03-01 11:47:40    COMPLETED
#> 6       N 2019-03-05 2019-03-05 15:23:44 2021-02-17 20:24:57 DISCONTINUED
#>         EOTSTT      EOSDT EOSDY          DCSREAS DTHDT DTHCAUS DTHCAT LDDTHELD
#> 1    COMPLETED 2021-02-23   731             <NA>  <NA>    <NA>   <NA>       NA
#> 2    COMPLETED 2021-02-25   731             <NA>  <NA>    <NA>   <NA>       NA
#> 3    COMPLETED 2021-02-27   731             <NA>  <NA>    <NA>   <NA>       NA
#> 4    COMPLETED 2021-03-01   731             <NA>  <NA>    <NA>   <NA>       NA
#> 5    COMPLETED 2021-03-01   731             <NA>  <NA>    <NA>   <NA>       NA
#> 6 DISCONTINUED 2021-02-17   716 LACK OF EFFICACY  <NA>    <NA>   <NA>       NA
#>   LDDTHGR1   LSTALVDT DTHADY study_duration_secs
#> 1     <NA> 2021-03-05     NA            63113904
#> 2     <NA> 2021-03-15     NA            63113904
#> 3     <NA> 2021-03-15     NA            63113904
#> 4     <NA> 2021-03-17     NA            63113904
#> 5     <NA> 2021-03-25     NA            63113904
#> 6     <NA> 2021-03-01     NA            63113904
#> 
#> ...
#> # A tibble: 6 × 44
#>   STUDYID USUBJID     SUBJID SITEID   AGE AGEU  SEX   RACE  ETHNIC COUNTRY DTHFL
#>   <chr>   <chr>       <chr>  <chr>  <int> <fct> <fct> <fct> <fct>  <fct>   <fct>
#> 1 AB12345 AB12345-CH… id-11  CHN-9     28 YEARS F     NATI… HISPA… CHN     N    
#> 2 AB12345 AB12345-CH… id-352 CHN-16    28 YEARS M     ASIAN HISPA… CHN     N    
#> 3 AB12345 AB12345-CH… id-186 CHN-1     27 YEARS M     ASIAN NOT H… CHN     N    
#> 4 AB12345 AB12345-CH… id-371 CHN-1     28 YEARS F     ASIAN NOT H… CHN     Y    
#> 5 AB12345 AB12345-CH… id-233 CHN-1     36 YEARS F     BLAC… NOT H… CHN     N    
#> 6 AB12345 AB12345-US… id-131 USA-12    44 YEARS F     AMER… NOT H… USA     N    
#> # … with 33 more variables: INVID <chr>, INVNAM <chr>, ARM <fct>, ARMCD <fct>,
#> #   ACTARM <fct>, ACTARMCD <fct>, TRT01P <fct>, TRT01A <fct>, REGION1 <fct>,
#> #   STRATA1 <fct>, STRATA2 <fct>, BMRKR1 <dbl>, BMRKR2 <fct>, ITTFL <fct>,
#> #   SAFFL <fct>, BMEASIFL <fct>, BEP01FL <fct>, RANDDT <date>, TRTSDTM <dttm>,
#> #   TRTEDTM <dttm>, EOSSTT <fct>, EOTSTT <fct>, EOSDT <date>, EOSDY <int>,
#> #   DCSREAS <fct>, DTHDT <date>, DTHCAUS <fct>, DTHCAT <fct>, LDDTHELD <int>,
#> #   LDDTHGR1 <fct>, LSTALVDT <date>, DTHADY <int>, study_duration_secs <dbl>
get_dataset(x)$get_metadata()
#> $type
#> [1] "scda"
#> 
#> $version
#> [1] "latest"
#> 
x$get_raw_data()
#> # A tibble: 400 × 44
#>    STUDYID USUBJID    SUBJID SITEID   AGE AGEU  SEX   RACE  ETHNIC COUNTRY DTHFL
#>    <chr>   <chr>      <chr>  <chr>  <int> <fct> <fct> <fct> <fct>  <fct>   <fct>
#>  1 AB12345 AB12345-C… id-128 CHN-3     32 YEARS M     ASIAN NOT H… CHN     N    
#>  2 AB12345 AB12345-C… id-262 CHN-15    35 YEARS M     BLAC… NOT H… CHN     N    
#>  3 AB12345 AB12345-R… id-378 RUS-3     30 YEARS F     ASIAN NOT H… RUS     N    
#>  4 AB12345 AB12345-C… id-220 CHN-11    26 YEARS F     ASIAN NOT H… CHN     N    
#>  5 AB12345 AB12345-C… id-267 CHN-7     40 YEARS M     ASIAN UNKNO… CHN     N    
#>  6 AB12345 AB12345-C… id-201 CHN-15    49 YEARS M     ASIAN NOT H… CHN     N    
#>  7 AB12345 AB12345-U… id-45  USA-1     34 YEARS F     ASIAN NOT H… USA     N    
#>  8 AB12345 AB12345-U… id-261 USA-1     32 YEARS F     ASIAN NOT H… USA     N    
#>  9 AB12345 AB12345-N… id-173 NGA-11    24 YEARS F     BLAC… NOT H… NGA     N    
#> 10 AB12345 AB12345-C… id-307 CHN-1     24 YEARS M     ASIAN NOT H… CHN     N    
#> # … with 390 more rows, and 33 more variables: INVID <chr>, INVNAM <chr>,
#> #   ARM <fct>, ARMCD <fct>, ACTARM <fct>, ACTARMCD <fct>, TRT01P <fct>,
#> #   TRT01A <fct>, REGION1 <fct>, STRATA1 <fct>, STRATA2 <fct>, BMRKR1 <dbl>,
#> #   BMRKR2 <fct>, ITTFL <fct>, SAFFL <fct>, BMEASIFL <fct>, BEP01FL <fct>,
#> #   RANDDT <date>, TRTSDTM <dttm>, TRTEDTM <dttm>, EOSSTT <fct>, EOTSTT <fct>,
#> #   EOSDT <date>, EOSDY <int>, DCSREAS <fct>, DTHDT <date>, DTHCAUS <fct>,
#> #   DTHCAT <fct>, LDDTHELD <int>, LDDTHGR1 <fct>, LSTALVDT <date>, …

metadata_fun <- callable_function(function(a) list(type = a))
metadata_fun$set_args(args = list(a = "scda"))
y <- scda_dataset_connector(
  dataname = "ADSL", scda_dataname = "adsl",
  metadata = metadata_fun
)
load_dataset(y)
get_dataset(y)$get_metadata()
#> $type
#> [1] "scda"
#>