Mercurial > repos > iuc > cemitool
changeset 1:81bffdf16b71 draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/cemitool commit 90f5b1b6df8661779e097330e1f11346c6f388fc
author | iuc |
---|---|
date | Mon, 19 Aug 2024 10:47:14 +0000 |
parents | 3f9ff31c88bb |
children | 9d93999d9028 |
files | CEMiTool.R cemitool.xml macros.xml |
diffstat | 3 files changed, 122 insertions(+), 111 deletions(-) [+] |
line wrap: on
line diff
--- a/CEMiTool.R Mon Oct 10 16:55:19 2022 +0000 +++ b/CEMiTool.R Mon Aug 19 10:47:14 2024 +0000 @@ -4,11 +4,11 @@ library(getopt, quietly = TRUE, warn.conflicts = FALSE) # setup R error handling to go to stderr options( - show.error.messages = FALSE, - error = function() { - cat(geterrmessage(), file = stderr()) - q("no", 1, FALSE) - } + show.error.messages = FALSE, + error = function() { + cat(geterrmessage(), file = stderr()) + q("no", 1, FALSE) + } ) # we need that to not crash galaxy with an UTF8 error on German LC settings. @@ -23,133 +23,139 @@ # Get options, using the spec as defined by the enclosed list. # Read the options from the default: commandArgs(TRUE). -spec <- matrix(c( - "expressionMatrix", "M", 1, "character", - "sampleAnnotation", "A", 2, "character", - "pathwayList", "P", 2, "character", - "interactions", "I", 2, "character", - "filter", "f", 1, "logical", - "filter_pval", "i", 1, "numeric", - "apply_vst", "a", 1, "logical", - "n_genes", "n", 1, "integer", - "eps", "e", 1, "numeric", - "cor_method", "c", 1, "character", - "cor_function", "y", 1, "character", - "network_type", "x", 1, "character", - "tom_type", "t", 1, "character", - "merge_similar", "m", 1, "logical", - "rank_method", "r", 1, "character", - "min_ngen", "g", 1, "integer", - "diss_thresh", "d", 1, "numeric", - "center_func", "h", 1, "character", - "ora_pval", "o", 1, "numeric", - "gsea_scale", "l", 1, "logical", - "gsea_min_size", "w", 1, "integer", - "gsea_max_size", "z", 1, "integer", - "sample_column_name", "v", 1, "character"), -byrow = TRUE, ncol = 4 +spec <- matrix( + c( + "expressionMatrix", "M", 1, "character", + "sampleAnnotation", "A", 2, "character", + "pathwayList", "P", 2, "character", + "interactions", "I", 2, "character", + "set_beta", "B", 1, "integer", + "filter", "f", 1, "logical", + "filter_pval", "i", 1, "numeric", + "apply_vst", "a", 1, "logical", + "n_genes", "n", 1, "integer", + "eps", "e", 1, "numeric", + "cor_method", "c", 1, "character", + "cor_function", "y", 1, "character", + "network_type", "x", 1, "character", + "tom_type", "t", 1, "character", + "merge_similar", "m", 1, "logical", + "rank_method", "r", 1, "character", + "min_ngen", "g", 1, "integer", + "diss_thresh", "d", 1, "numeric", + "center_func", "h", 1, "character", + "ora_pval", "o", 1, "numeric", + "gsea_scale", "l", 1, "logical", + "gsea_min_size", "w", 1, "integer", + "gsea_max_size", "z", 1, "integer", + "sample_column_name", "v", 1, "character" + ), + byrow = TRUE, ncol = 4 ) opt <- getopt(spec) counts <- read.table( - opt$expressionMatrix, - header = TRUE, - sep = "\t", - strip.white = TRUE, - stringsAsFactors = FALSE, - check.names = FALSE + opt$expressionMatrix, + header = TRUE, + sep = "\t", + strip.white = TRUE, + stringsAsFactors = FALSE, + check.names = FALSE ) # Run CEMiTool if (is.null(opt$sampleAnnotation)) { - cem <- cemitool( - counts, - filter = opt$filter, - filter_pval = opt$filter_pval, - apply_vst = opt$apply_vst, - n_genes = opt$n_genes, - eps = opt$eps, - cor_method = opt$cor_method, - cor_function = opt$cor_function, - network_type = opt$network_type, - tom_type = opt$tom_type, - merge_similar = opt$merge_similar, - min_ngen = opt$min_ngen, - diss_thresh = opt$diss_thresh, - center_func = opt$center_func, - verbose = TRUE, - ora_pval = opt$ora_pval - ) + cem <- cemitool( + counts, + filter = opt$filter, + filter_pval = opt$filter_pval, + apply_vst = opt$apply_vst, + n_genes = opt$n_genes, + eps = opt$eps, + cor_method = opt$cor_method, + cor_function = opt$cor_function, + network_type = opt$network_type, + tom_type = opt$tom_type, + merge_similar = opt$merge_similar, + min_ngen = opt$min_ngen, + diss_thresh = opt$diss_thresh, + center_func = opt$center_func, + verbose = TRUE, + ora_pval = opt$ora_pval, + set_beta = opt$set_beta + ) } else { - annotation <- read.table( - opt$sampleAnnotation, - header = TRUE, - sep = "\t", - strip.white = TRUE, - stringsAsFactors = FALSE, - check.names = FALSE - ) - cem <- cemitool( - counts, - annotation, - filter = opt$filter, - filter_pval = opt$filter_pval, - apply_vst = opt$apply_vst, - n_genes = opt$n_genes, - eps = opt$eps, - cor_method = opt$cor_method, - cor_function = opt$cor_function, - network_type = opt$network_type, - tom_type = opt$tom_type, - merge_similar = opt$merge_similar, - min_ngen = opt$min_ngen, - diss_thresh = opt$diss_thresh, - center_func = opt$center_func, - verbose = TRUE, - ora_pval = opt$ora_pval, - sample_name_column = opt$sample_column_name, - class_column = "Class", - order_by_class = TRUE - ) - cem <- mod_gsea( - cem, - gsea_scale = opt$gsea_scale, - gsea_min_size = opt$gsea_min_size, - gsea_max_size = opt$gsea_max_size, - rank_method = opt$rank_method -) - cem <- plot_gsea(cem) + annotation <- read.table( + opt$sampleAnnotation, + header = TRUE, + sep = "\t", + strip.white = TRUE, + stringsAsFactors = FALSE, + check.names = FALSE + ) + cem <- cemitool( + counts, + annotation, + filter = opt$filter, + filter_pval = opt$filter_pval, + apply_vst = opt$apply_vst, + n_genes = opt$n_genes, + eps = opt$eps, + cor_method = opt$cor_method, + cor_function = opt$cor_function, + network_type = opt$network_type, + tom_type = opt$tom_type, + merge_similar = opt$merge_similar, + min_ngen = opt$min_ngen, + diss_thresh = opt$diss_thresh, + center_func = opt$center_func, + verbose = TRUE, + ora_pval = opt$ora_pval, + sample_name_column = opt$sample_column_name, + class_column = "Class", + order_by_class = TRUE + ) + cem <- mod_gsea( + cem, + gsea_scale = opt$gsea_scale, + gsea_min_size = opt$gsea_min_size, + gsea_max_size = opt$gsea_max_size, + rank_method = opt$rank_method + ) + cem <- plot_gsea(cem) } if (!is.null(opt$pathwayList)) { - gmt_in <- read_gmt(opt$pathwayList) - cem <- mod_ora(cem, gmt_in) - cem <- plot_ora(cem) + gmt_in <- read_gmt(opt$pathwayList) + cem <- mod_ora(cem, gmt_in) + cem <- plot_ora(cem) } if (!is.null(opt$interactions)) { - interactions <- read.table( - opt$interactions, - header = TRUE, - sep = "\t", - strip.white = TRUE, - stringsAsFactors = FALSE, - check.names = FALSE - ) - interactions_data(cem) <- interactions # add interactions - cem <- plot_interactions(cem) + interactions <- read.table( + opt$interactions, + header = TRUE, + sep = "\t", + strip.white = TRUE, + stringsAsFactors = FALSE, + check.names = FALSE + ) + interactions_data(cem) <- interactions # add interactions + cem <- plot_interactions(cem) } ## Write analysis results into files write_files(cem, - directory = "./Tables", - force = TRUE) + directory = "./Tables", + force = TRUE +) generate_report(cem) save_plots(cem, - value = "all", - directory = "./Plots", - force = TRUE) + value = "all", + directory = "./Plots", + force = TRUE +)
--- a/cemitool.xml Mon Oct 10 16:55:19 2022 +0000 +++ b/cemitool.xml Mon Aug 19 10:47:14 2024 +0000 @@ -17,6 +17,9 @@ #if $interactions -I '$interactions' #end if + #if str($beta): + -B $beta + #end if -f $advanced_parameters.filter -i $advanced_parameters.filter_pval -a $advanced_parameters.apply_vst @@ -51,6 +54,8 @@ <param name="interactions" type="data" format="tabular" optional="true" label="Interactions data" help="Interaction data, such as protein-protein interactions can be added in order to generate annotated module graphs. Interaction files contains two columns for interacting pairs of genes"/> + <param name="beta" type="integer" min="0" label="Beta value" optional="true" + help="The beta value is a parameter that lies in the core of the weighted gene co-expression network analysis (WGCNA)."/> <param name="outputs" type="select" multiple="true" display="checkboxes" label="Outputs selector"> <option value="report" selected="true">Report</option> <option value="tables">Tables</option>
--- a/macros.xml Mon Oct 10 16:55:19 2022 +0000 +++ b/macros.xml Mon Aug 19 10:47:14 2024 +0000 @@ -1,6 +1,6 @@ <macros> <token name="@TOOL_VERSION@">1.18.1</token> - <token name="@VERSION_SUFFIX@">0</token> + <token name="@VERSION_SUFFIX@">1</token> <xml name="requirements"> <requirements> <requirement type="package" version="@TOOL_VERSION@">bioconductor-cemitool</requirement>