Mercurial > repos > iuc > sleuth
diff sleuth.R @ 3:2c3d294dbe42 draft default tip
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/sleuth commit 4adb19064a6973121680119529444286c24c1ac1
author | iuc |
---|---|
date | Mon, 02 Jun 2025 21:31:22 +0000 |
parents | d6b5fc94062c |
children |
line wrap: on
line diff
--- a/sleuth.R Thu Jun 08 19:57:53 2023 +0000 +++ b/sleuth.R Mon Jun 02 21:31:22 2025 +0000 @@ -1,6 +1,7 @@ library(sleuth, - quietly = TRUE, - warn.conflicts = FALSE) + quietly = TRUE, + warn.conflicts = FALSE +) library(annotables, quietly = TRUE, warn.conflicts = FALSE) library(argparse, quietly = TRUE, warn.conflicts = FALSE) library(tidyverse) @@ -8,11 +9,11 @@ # 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. @@ -28,113 +29,123 @@ parser$add_argument("--factorLevel", action = "append", required = FALSE) parser$add_argument("--factorLevel_counts", - action = "append", - required = FALSE) -parser$add_argument("--factorLevel_n", action = "append", required = FALSE) -parser$add_argument("--cores", type = "integer", required = FALSE) + action = "append", + required = FALSE +) +parser$add_argument("--factorLevel_n", action = "append", required = FALSE) +parser$add_argument("--cores", type = "integer", required = FALSE) parser$add_argument("--normalize", action = "store_true", required = FALSE) parser$add_argument("--nbins", type = "integer", required = FALSE) parser$add_argument("--lwr", type = "numeric", required = FALSE) parser$add_argument("--upr", type = "numeric", required = FALSE) parser$add_argument("--metadata_file", - action = "append", - required = FALSE) + action = "append", + required = FALSE +) parser$add_argument("--experiment_design", required = FALSE) args <- parser$parse_args() if (args$experiment_design == "complex") { - ## Complex experiment design - ############################ - - s2c <- - read.table(file = args$metadata_file, - header = TRUE, - sep = "\t") + ## Complex experiment design + ############################ - s2c$path <- file.path("./kallisto_outputs/", paste(s2c$path, ".h5", sep = "")) - for (f in args$factorLevel_counts) { - file.rename(f, paste(f, ".h5", sep = "")) - } + s2c <- + read.table( + file = args$metadata_file, + header = TRUE, + sep = "\t" + ) - so <- sleuth_prep(s2c, full_model = ~ condition, num_cores = 1) - so <- sleuth_fit(so) + s2c$path <- file.path("./kallisto_outputs/", paste(s2c$path, ".h5", sep = "")) + for (f in args$factorLevel_counts) { + file.rename(f, paste(f, ".h5", sep = "")) + } + so <- sleuth_prep(s2c, full_model = ~condition, num_cores = 1) + so <- sleuth_fit(so) } else { - ## Simple experiment design - ########################### + ## Simple experiment design + ########################### - conditions <- c() - for (x in seq_along(args$factorLevel)) { - temp <- append(conditions, rep(args$factorLevel[[x]])) - conditions <- temp - } + conditions <- c() + for (x in seq_along(args$factorLevel)) { + temp <- append(conditions, rep(args$factorLevel[[x]])) + conditions <- temp + } - sample_names <- - gsub(".fastq.+", "", basename(args$factorLevel_counts)) + sample_names <- + gsub(".fastq.+", "", basename(args$factorLevel_counts)) - design <- - data.frame(list( - sample = sample_names, - condition = conditions, - path = args$factorLevel_counts - )) - so <- sleuth_prep(design, - cores = args$cores, - normalize = args$normalize) + design <- + data.frame(list( + sample = sample_names, + condition = conditions, + path = args$factorLevel_counts + )) + so <- sleuth_prep(design, + cores = args$cores, + normalize = args$normalize + ) } so <- sleuth_fit( - so, - ~ condition, - "full", - n_bins = args$nbins, - lwr = args$lwr, - upr = args$upr + so, + ~condition, + "full", + n_bins = args$nbins, + lwr = args$lwr, + upr = args$upr ) so <- sleuth_fit( - so, - ~ 1, - "reduced", - n_bins = args$nbins, - lwr = args$lwr, - upr = args$upr + so, + ~1, + "reduced", + n_bins = args$nbins, + lwr = args$lwr, + upr = args$upr ) so <- sleuth_lrt(so, "reduced", "full") sleuth_table <- - sleuth_results(so, "reduced:full", "lrt", show_all = FALSE) + sleuth_results(so, "reduced:full", "lrt", show_all = FALSE) write.table( - sleuth_table, - file = "sleuth_table.tab", - quote = FALSE, - sep = "\t", - col.names = TRUE, - row.names = FALSE + sleuth_table, + file = "sleuth_table.tab", + quote = FALSE, + sep = "\t", + col.names = TRUE, + row.names = FALSE ) outputFile <- file.path(getwd(), "pca_plot.pdf") -pdf(file = outputFile, +pdf( + file = outputFile, height = 6, - width = 9) + width = 9 +) plot_pca(so, color_by = "condition") dev.off() outputFile <- file.path(getwd(), "group_density.pdf") -pdf(file = outputFile, +pdf( + file = outputFile, height = 6, - width = 9) + width = 9 +) plot_group_density( - so, - use_filtered = TRUE, - units = "est_counts", - trans = "log", - grouping = setdiff(colnames(so$sample_to_covariates), - "sample"), - offset = 1 + so, + use_filtered = TRUE, + units = "est_counts", + trans = "log", + grouping = setdiff( + colnames(so$sample_to_covariates), + "sample" + ), + offset = 1 ) dev.off()