Mercurial > repos > iuc > sleuth
comparison sleuth.R @ 1:d3e447dd52c8 draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/sleuth commit 6fbf73689708cfbdf3d9d783af4988bad7137f93
author | iuc |
---|---|
date | Wed, 07 Jun 2023 11:47:30 +0000 |
parents | 5f1cb4c28d73 |
children | d6b5fc94062c |
comparison
equal
deleted
inserted
replaced
0:5f1cb4c28d73 | 1:d3e447dd52c8 |
---|---|
24 | 24 |
25 | 25 |
26 # Collect arguments from command line | 26 # Collect arguments from command line |
27 parser <- ArgumentParser(description = "Sleuth R script") | 27 parser <- ArgumentParser(description = "Sleuth R script") |
28 | 28 |
29 parser$add_argument("--factorLevel", action = "append", required = TRUE) | 29 parser$add_argument("--factorLevel", action = "append", required = FALSE) |
30 parser$add_argument("--factorLevel_counts", | 30 parser$add_argument("--factorLevel_counts", |
31 action = "append", | 31 action = "append", |
32 required = TRUE) | 32 required = FALSE) |
33 parser$add_argument("--factorLevel_n", action = "append", required = TRUE) | 33 parser$add_argument("--factorLevel_n", action = "append", required = FALSE) |
34 parser$add_argument("--cores", type = "integer", required = TRUE) | 34 parser$add_argument("--cores", type = "integer", required = FALSE) |
35 parser$add_argument("--normalize", action = "store_true", required = FALSE) | 35 parser$add_argument("--normalize", action = "store_true", required = FALSE) |
36 parser$add_argument("--nbins", type = "integer", required = TRUE) | 36 parser$add_argument("--nbins", type = "integer", required = FALSE) |
37 parser$add_argument("--lwr", type = "numeric", required = TRUE) | 37 parser$add_argument("--lwr", type = "numeric", required = FALSE) |
38 parser$add_argument("--upr", type = "numeric", required = TRUE) | 38 parser$add_argument("--upr", type = "numeric", required = FALSE) |
39 parser$add_argument("--metadata_file", | |
40 action = "append", | |
41 required = FALSE) | |
42 parser$add_argument("--experiment_design", required = FALSE) | |
39 | 43 |
40 args <- parser$parse_args() | 44 args <- parser$parse_args() |
41 | 45 |
42 all_files <- args$factorLevel_counts | 46 if (args$experiment_design == "complex") { |
47 ## Complex experiment design | |
48 ############################ | |
43 | 49 |
44 conditions <- c() | 50 s2c <- |
45 for (x in seq_along(args$factorLevel)) { | 51 read.table(file = args$metadata_file, |
46 temp <- append(conditions, rep(args$factorLevel[[x]])) | 52 header = TRUE, |
47 conditions <- temp | 53 sep = "\t") |
54 paths <- c() | |
55 for (x in s2c$data_filename) { | |
56 paths <- c(paths, paste("./kallisto_outputs/", x, sep = "")) | |
57 } | |
58 for (f in paths) { | |
59 file.rename(f, gsub(".fastq.*", "", f)) | |
60 file.rename(f, paste(gsub(".fastq.*", "", f), ".h5", sep = "")) | |
61 } | |
62 s2c$path <- paste(gsub(".fastq.*", ".h5", paths), ".h5", sep = "") | |
63 | |
64 so <- sleuth_prep(s2c, full_model = ~ condition, num_cores = 1) | |
65 so <- sleuth_fit(so) | |
66 | |
67 } else { | |
68 ## Simple experiment design | |
69 ########################### | |
70 | |
71 conditions <- c() | |
72 for (x in seq_along(args$factorLevel)) { | |
73 temp <- append(conditions, rep(args$factorLevel[[x]])) | |
74 conditions <- temp | |
75 } | |
76 | |
77 sample_names <- | |
78 gsub(".fastq.+", "", basename(args$factorLevel_counts)) | |
79 | |
80 design <- | |
81 data.frame(list( | |
82 sample = sample_names, | |
83 condition = conditions, | |
84 path = args$factorLevel_counts | |
85 )) | |
86 so <- sleuth_prep(design, | |
87 cores = args$cores, | |
88 normalize = args$normalize) | |
48 } | 89 } |
49 | |
50 sample_names <- all_files %>% | |
51 str_replace(pattern = "\\.tab", "") | |
52 | |
53 design <- | |
54 data.frame(list( | |
55 sample = sample_names, | |
56 condition = conditions, | |
57 path = all_files | |
58 )) | |
59 so <- sleuth_prep(design, | |
60 cores = args$cores, | |
61 normalize = args$normalize) | |
62 | 90 |
63 so <- sleuth_fit( | 91 so <- sleuth_fit( |
64 so, | 92 so, |
65 ~ condition, | 93 ~ condition, |
66 "full", | 94 "full", |