View source: R/asca_analysis.R
asca_analysis | R Documentation |
the scripts determine which parameters are statistically significant to discriminate your data.
asca_analysis(x, data.info = c("sample", "subject", "time", "class"), permutations = 100, plots = F)
x |
|
data.info |
|
permutations |
|
plots |
##---- 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 (x, data.info = c("sample", "subject", "time", "class"), permutations = 100, plots = F) { data_only <- x[, (length(data.info) + 1):ncol(x)] X <- data_only ab <- which(colSums(X) == 0) if (length(ab) != 0) { X <- X[, -ab] } factors <- x[, data.info[2:4]] factors[, 3] <- as.numeric(as.factor(factors[, 3])) factors[, 1] <- as.numeric(as.factor(factors[, 1])) matrix <- NULL for (i in 1:ncol(factors)) { matrix <- c(matrix, combn(ncol(factors), i, simplify = FALSE)) } matrix <- lapply(matrix, paste0) matrix2 <- as.numeric(sapply(seq(1, length(matrix)), function(x) paste0(as.numeric(matrix[[x]]), collapse = ""))) matrix2 <- paste(matrix2, collapse = ",") if (any(factors[, 2] <= 0)) { factors[, 2] <- factors[, 2] + abs(min(factors[, 2])) } factors <- apply(factors, 2, function(x) as.numeric(x)) ASCA_data1 <- apply(X, 2, function(x) as.numeric(x)) my_ASCA_res <- ASCA.Calculate(data = ASCA_data1, levels = as.matrix(factors), equation.elements = matrix2, scaling = T) ASCA.GetSummary(my_ASCA_res, quietly = FALSE) permutation <- ASCA.DoPermutationTest(my_ASCA_res, perm = permutations) matrix <- NULL for (i in 1:ncol(factors)) { matrix <- c(matrix, combn(colnames(factors), i, simplify = FALSE)) } matrix <- lapply(matrix, paste0) matrix2 <- sapply(seq(1, length(matrix)), function(x) paste(matrix[[x]], collapse = " x ")) colnames(permutation) <- matrix2 return(permutation) if (plots == T) { ASCA.Plot(my_ASCA_res) } }
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.