Nothing
data("multi_omics")
test_that("TrainData: all tests", {
# Testing and layers
training <- Training$new(id = "training",
ind_col = "IDS",
target = "disease",
target_df = multi_omics$training$target)
# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #
# Start testing training data with empty layer #
# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #
expect_error({
train_data_ge <- TrainData$new(id = "geneexpr",
train_layer = training,
data_frame = multi_omics$training$geneexpr)
})
tl_ge <- TrainLayer$new(id = "geneexpr", training = training)
tl_pr <- TrainLayer$new(id = "proteinexpr", training = training)
tl_me <- TrainLayer$new(id = "methylation", training = training)
print(tl_ge)
# We also prepare the meta layer for the meta analysis.
tl_meta <- TrainMetaLayer$new(id = "meta_layer", training = training)
# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #
# Start testing training data #
# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #
# TrainData can be added successfully
expect_no_error({
train_data_ge <- TrainData$new(id = "geneexpr",
train_layer = tl_ge,
data_frame = multi_omics$training$geneexpr)
train_data_pr <- TrainData$new(id = "proteinexpr",
train_layer = tl_pr,
data_frame = multi_omics$training$proteinexpr)
train_data_me <- TrainData$new(id = "methylation",
train_layer = tl_me,
data_frame = multi_omics$training$methylation)
train_data_me$getTrainLayer()
print(train_data_me)
})
# On wrong target or ID column
expect_error({
ts_wrong_target <- Training$new(id = "training",
ind_col = "IDS",
target = "diseases",
target_df = multi_omics$training$target)
})
expect_error({
tl_ge_wrong_target <- TrainLayer$new(id = "geneexpr",
training = ts_wrong_target)
})
expect_error({
TrainData$new(id = "geneexpr",
train_layer = tl_ge_wrong_target,
data_frame = multi_omics$training$geneexpr)
})
# No target variable
ts_missing_target <- Training$new(id = "training",
ind_col = "IDS",
target = "disease",
target_df = multi_omics$training$target)
tl_ge_missing_target <- TrainLayer$new(id = "geneexpr",
training = ts_missing_target)
expect_no_error({
tmp <- multi_omics$training$geneexpr
# Re-build this test case
# tmp$disease[1] <- NA
TrainData$new(id = "geneexpr",
train_layer = tl_ge_missing_target,
data_frame = tmp)
})
# Update TrainData
expect_no_error({
TrainData$new(id = "proteinexpr",
train_layer = tl_ge_missing_target,
data_frame = tmp)
})
expect_error({
TrainData$new(id = "proteinexpr",
train_layer = tl_meta,
data_frame = tmp)
})
# Target variable must be binary or dichotome
expect_error({
ts_not_bin_target <- Training$new(id = "training",
ind_col = "IDS",
target = "disease",
target_df = multi_omics$training$target)
tl_ge_not_bin_target <- TrainLayer$new(id = "geneexpr_no_bin",
training = ts_not_bin_target)
tmp <- multi_omics$training$geneexpr
tmp$disease <- sample(x = letters[1L:3L],
size = length(tmp$disease),
replace = TRUE)
TrainData$new(id = "geneexpr",
train_layer = tl_ge_not_bin_target,
data_frame = tmp)
})
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.