Learn R Programming

shinybatch (version 0.3)

conf_to_dt: Convert a list of task configurations into two data.tables of global and individual features.

Description

Convert a list of task configurations into two data.tables of global and individual features.

Usage

conf_to_dt(
  confs,
  allowed_run_info_cols = c("date_creation", "date_start", "date_end", "priority",
    "status"),
  allow_descr = TRUE,
  allowed_function_cols = c("path", "name"),
  allow_args = TRUE
)

dir_conf_to_dt( dir_path, allowed_run_info_cols = c("date_creation", "date_start", "date_end", "priority", "status"), allow_descr = TRUE, allowed_function_cols = c("path", "name"), allow_args = TRUE )

Arguments

confs

list of list. List of conf list(s) from yaml file(s).

allowed_run_info_cols

characteror or boolean (c("date_creation", "date_start", "date_end", "priority", "status")). Run info elements to be kept.

allow_descr

boolean or character (TRUE). Either a boolean specifying whether or not to keep descr elements, or column names.

allowed_function_cols

character or boolean (c("names", "path")). Function elements to be kept.

allow_args

boolean or character (TRUE). Either a boolean specifying whether or not to keep args elements, or column names.

dir_path

character. Path to the directory with tasks.

Value

a list of two tables 'tbl_global' and 'tbl_idv':

  • tbl_global contains the global features of the configurations (.$run_info and .$descriptive)

  • tbl_idv contains the individual features of the configurations (.$function and .$args)

Examples

Run this code
# NOT RUN {
# }
# NOT RUN {
dir_conf <- paste0(tempdir(), "/conf")
dir.create(dir_conf, recursive = TRUE)

# ex fun
fun_path = system.file("ex_fun/sb_fun_ex.R", package = "shinybatch")
fun_name = "sb_fun_ex"

# create 2 confs
conf_1 <- configure_task(dir_path = dir_conf,
                         conf_descr = list(title_1 = "my_title_1",
                                           description_1 = "my_descr_1"),
                         fun_path = fun_path,
                         fun_name = fun_name,
                         fun_args = list(x = 0,
                                         y = 0:4,
                                         z = iris),
                         priority = 1)
conf_2 <- configure_task(dir_path = dir_conf,
                         conf_descr = list(title_2 = "my_title_2",
                                           description_2 = "my_descr_2"),
                         fun_path = fun_path,
                         fun_name = fun_name,
                         fun_args = list(x = 1,
                                         y = 0:4,
                                         z = iris),
                         priority = 2)

# retrieve information about all tasks in main directory
dir_conf_to_dt(dir_conf, allowed_run_info_cols = FALSE)

dir_conf_to_dt(dir_conf,
           allow_descr = FALSE,
           allow_args = FALSE)

dir_conf_to_dt(dir_conf,
           allowed_run_info_cols = c("status", "date_creation"),
           allowed_function_cols = c("path"))

dir_conf_to_dt(dir_conf,
           allowed_run_info_cols = NULL,
           allowed_function_cols = NULL)

dir_conf_to_dt(dir_conf,
           allowed_run_info_cols = "",
           allowed_function_cols = "",
           allow_descr = FALSE,
           allow_args = FALSE)

# or just on some tasks ?
info_conf_1 <- conf_1
info_conf_2 <- yaml::read_yaml(file.path(conf_2$dir, "conf.yml"))

conf_to_dt(list(info_conf_1, info_conf_2))

# }
# NOT RUN {
# }

Run the code above in your browser using DataLab