Mercurial > repos > recetox > ramclustr
view ramclustr_wrapper.R @ 3:2ec9253a647e draft
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/ramclustr commit 8714723083359049eb1a715a946851e07f8a3a20
author | recetox |
---|---|
date | Tue, 20 Sep 2022 14:43:56 +0000 |
parents | 75dafb766417 |
children | 050cfef6ba65 |
line wrap: on
line source
store_output <- function(ramclustr_obj, output_merge_msp, output_spec_abundance, msp_file) { RAMClustR::write.msp(ramclustr_obj, one.file = output_merge_msp) write.csv(ramclustr_obj$SpecAbund, file = output_spec_abundance, row.names = TRUE, quote = FALSE) if (!is.null(msp_file)) { exp_name <- ramclustr_obj$ExpDes[[1]][which(row.names(ramclustr_obj$ExpDes[[1]]) == "Experiment"), 1] filename <- paste("spectra/", exp_name, ".msp", sep = "") file.copy(from = filename, to = msp_file, overwrite = TRUE) } } load_experiment_definition <- function(filename) { experiment <- RAMClustR::defineExperiment(csv = filename) return(experiment) } read_metadata <- function(filename) { data <- read.csv(filename, header = TRUE, stringsAsFactors = FALSE) if (!"qc" %in% colnames(data)) { if ("sampleType" %in% colnames(data)) { data$qc <- ifelse(data$sampleType == "qc", TRUE, FALSE) } } if (!"order" %in% colnames(data)) { if ("injectionOrder" %in% colnames(data)) { names(data)[names(data) == "injectionOrder"] <- "order" } } return(data) } ramclustr_xcms <- function(input_xcms, use_pheno, sr, st = NULL, cor_method, maxt, linkage, min_module_size, hmax, deep_split, normalize, metadata_file = NULL, qc_inj_range, block_size, mult, mzdec, rt_only_low_n, replace_zeros, exp_design = NULL) { obj <- load(input_xcms) batch <- NULL order <- NULL qc <- NULL if (!is.null(metadata_file)) { metadata <- read_metadata(metadata_file) batch <- metadata$batch order <- metadata$order qc <- metadata$qc } experiment <- NULL if (!is.null(exp_design)) { experiment <- load_experiment_definition(exp_design) } x <- RAMClustR::ramclustR( xcmsObj = xdata, st = st, maxt = maxt, sr = sr, deepSplit = deep_split, blocksize = block_size, mult = mult, hmax = hmax, usePheno = use_pheno, mspout = FALSE, qc.inj.range = qc_inj_range, normalize = normalize, minModuleSize = min_module_size, linkage = linkage, mzdec = mzdec, cor.method = cor_method, rt.only.low.n = rt_only_low_n, fftempdir = NULL, replace.zeros = replace_zeros, batch = batch, order = order, qc = qc, ExpDes = experiment ) return(x) } ramclustr_csv <- function(ms, idmsms, sr, st, cor_method, maxt, linkage, min_module_size, hmax, deep_split, normalize, metadata_file = NULL, qc_inj_range, block_size, mult, mzdec, rt_only_low_n, replace_zeros, exp_design = NULL) { if (!file.exists(idmsms)) { idmsms <- NULL } batch <- NULL order <- NULL qc <- NULL if (!is.null(metadata_file)) { metadata <- read_metadata(metadata_file) batch <- metadata$batch order <- metadata$order qc <- metadata$qc } experiment <- NULL if (!is.null(exp_design)) { experiment <- load_experiment_definition(exp_design) } x <- RAMClustR::ramclustR( ms = ms, idmsms = idmsms, st = st, maxt = maxt, sr = sr, deepSplit = deep_split, blocksize = block_size, mult = mult, hmax = hmax, mspout = FALSE, qc.inj.range = qc_inj_range, normalize = normalize, minModuleSize = min_module_size, linkage = linkage, mzdec = mzdec, cor.method = cor_method, rt.only.low.n = rt_only_low_n, fftempdir = NULL, replace.zeros = replace_zeros, batch = batch, order = order, qc = qc, ExpDes = experiment ) return(x) }