Mercurial > repos > iuc > phyloseq_from_dada2
annotate phyloseq_from_dada2.R @ 0:46a99bd1f10e draft
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
author | iuc |
---|---|
date | Thu, 03 Mar 2022 13:28:04 +0000 |
parents | |
children | b85ba18a8f36 |
rev | line source |
---|---|
0
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
1 #!/usr/bin/env Rscript |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
2 |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
3 suppressPackageStartupMessages(library("optparse")) |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
4 suppressPackageStartupMessages(library("phyloseq")) |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
5 suppressPackageStartupMessages(library("tidyverse")) |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
6 |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
7 option_list <- list( |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
8 make_option(c("--sequence_table"), action = "store", dest = "sequence_table", help = "Input sequence table"), |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
9 make_option(c("--taxonomy_table"), action = "store", dest = "taxonomy_table", help = "Input taxonomy table"), |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
10 make_option(c("--output"), action = "store", dest = "output", help = "RDS output") |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
11 ) |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
12 |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
13 parser <- OptionParser(usage = "%prog [options] file", option_list = option_list); |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
14 args <- parse_args(parser, positional_arguments = TRUE); |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
15 opt <- args$options; |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
16 |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
17 # The input sequence_table is an integer matrix |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
18 # stored as tabular (rows = samples, columns = ASVs). |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
19 seq_table_numeric_matrix <- data.matrix(read.table(opt$sequence_table, sep = "\t")); |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
20 |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
21 # The input taxonomy_table is a table containing |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
22 # the assigned taxonomies exceeding the minBoot |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
23 # level of bootstrapping confidence. Rows correspond |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
24 # to sequences, columns to taxonomic levels. NA |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
25 # indicates that the sequence was not consistently |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
26 # classified at that level at the minBoot threshold. |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
27 tax_table_matrix <- as.matrix(read.table(opt$taxonomy_table, header = FALSE, sep = "\t")); |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
28 |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
29 # Construct a tax_table object. The rownames of |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
30 # tax_tab must match the OTU names (taxa_names) |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
31 # of the otu_table defined below. |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
32 tax_tab <- tax_table(tax_table_matrix); |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
33 |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
34 # Construct an otu_table object. |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
35 otu_tab <- otu_table(seq_table_numeric_matrix, taxa_are_rows = TRUE); |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
36 |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
37 # Construct a phyloseq object. |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
38 phyloseq_obj <- phyloseq(otu_tab, tax_tab); |
46a99bd1f10e
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/phyloseq commit d1004c06207be773c278e12745aada276b63172e"
iuc
parents:
diff
changeset
|
39 saveRDS(phyloseq_obj, file = opt$output, compress = TRUE); |