AnalyseData: umbrella::AnalyseData()

Usage Arguments Examples

View source: R/umbrella_module_analyse_data.R

Usage

1
AnalyseData(dataset, draw_graph = c(TRUE, FALSE), random_seed = c(TRUE, FALSE))

Arguments

dataset
draw_graph
random_seed

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
##---- Should be DIRECTLY executable !! ----
##-- ==>  Define data, use random,
##--	or do  help(data=index)  for the standard data sets.

## The function is currently defined as
function (dataset, draw_graph = c(TRUE, FALSE), random_seed = c(TRUE,
    FALSE))
{
    if (isTRUE(random_seed)) {
        umbrella::ApplyRandomSeed()
    }
    else if (isFALSE(random_seed)) {
        print(paste("NOTE: Argument 'random_seed' is set to 'FALSE'. Proceeding ",
            "with machine default."))
    }
    else if (missing(random_seed)) {
        print(paste("NOTE: Argument 'random_seed' is missing. Proceeding with ",
            "machine default."))
    }
    else {
        print("ERROR: An unknown error occurred. Terminating Data Analysis.")
        return()
    }
    if (missing(dataset)) {
        print(paste("ERROR: Argument 'dataset' has not been defined. Terminating",
            "Data Analysis."))
        return()
    }
    else if (typeof(dataset) == "list") {
        print("NOTE: Data is of type 'list'.")
        dataset_class <- class(dataset)
        dataset_type <- typeof(dataset)
    }
    else {
        print("ERROR: An unknown error occurred. Terminating Data Analysis.")
        return()
    }
    print("NOTE: Validation Complete. No errors encountered.")
    if (class(dataset) == "data.frame") {
        print(paste("NOTE: Data are 'data.frame' format. Converting to 'igraph'."))
        dataset <- igraph::graph_from_adj_list(dataset, mode = "all",
            duplicate = FALSE)
        print(paste("NOTE: Data have been converted to 'igraph'."))
    }
    else if (class(dataset) == "igraph") {
        print(paste("NOTE: Data are 'igraph' format. No conversion required."))
    }
    else {
        print("ERROR: An unknown error occurred. Terminating Data Analysis.")
        return()
    }
    dataset_edge_count <- igraph::ecount(dataset)
    print(paste("NOTE: Data contains a total of", igraph::ecount(dataset),
        "connections (edges)."))
    dataset_vertex_count = igraph::vcount(dataset)
    print(paste("NOTE: Data contains a total of", igraph::vcount(dataset),
        "nodes (vertices)."))
    if (isTRUE(draw_graph)) {
        igraph::plot.igraph(dataset, main = "Network Data Graph",
            sub = paste("Umbrella", packageVersion("umbrella")))
    }
    dataset_transition_matrix <- igraph::stochastic_matrix(dataset,
        sparse = TRUE)
    analysis_payload <- list(dataset = dataset, dataset_type = dataset_type,
        dataset_class = dataset_class, dataset_edge_count = dataset_edge_count,
        dataset_vertex_count = dataset_vertex_count, dataset_adjacency_matrix = as_adjacency_matrix(dataset),
        dataset_transition_matrix = dataset_transition_matrix)
    return(analysis_payload)
  }

ultraviolet-1986/umbrella documentation built on July 20, 2020, 9:02 p.m.