Import ASV table
if (!exists("seqtab_nochim")) { # If seqtab_nochim is not found (e.g., last session was lost)
seqtab_nochim <- readRDS(file.path(base_dir, "seqtab_nochim.rds"))
}
dim(seqtab_nochim)
## [1] 19 189
DADA2’s taxonomy assignment
- The DADA2 function
assignTaxonomy() provides a built-in
implementation of the naïve Bayesian classifier for taxonomic
assignment.
- The DADA2 function
assignSpecies() performs
species-level annotation via exact sequence matching, requiring a
full-length, unambiguous match between the ASV and a reference sequence
annotated at the species level.
- It reports species only when the sequenced region unambiguously
supports the assignment through exact reference matching, making
species-level annotation inherently limited.
SILVA
tax_mat <- assignTaxonomy(
seqtab_nochim,
refFasta = tax_train_fasta
)
tax_mat <- addSpecies(tax_mat, refFasta = tax_species_fasta, allowMultiple = TRUE)
saveRDS(tax_mat, file.path(base_dir, "DADA2_taxonomy_matrix_SILVA.rds"))
to_preview <- tax_mat # Removing sequence rownames for display only
rownames(to_preview) <- NULL
head(to_preview)
## Kingdom Phylum Class Order Family
## [1,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Muribaculaceae"
## [2,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Muribaculaceae"
## [3,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Muribaculaceae"
## [4,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Bacteroidaceae"
## [5,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Rikenellaceae"
## [6,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Muribaculaceae"
## Genus Species
## [1,] NA NA
## [2,] NA NA
## [3,] NA NA
## [4,] "Bacteroides" "acidifaciens/caecimuris"
## [5,] "Alistipes" NA
## [6,] NA NA
RDP
rdp_mat <- assignTaxonomy(
seqtab_nochim,
refFasta = rdp_train_fasta
)
saveRDS(rdp_mat, file.path(base_dir, "DADA2_taxonomy_matrix_RDP.rds"))
to_preview <- rdp_mat # Removing sequence rownames for display only
rownames(to_preview) <- NULL
head(to_preview)
## Kingdom Phylum Class Order Family
## [1,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Muribaculaceae"
## [2,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Muribaculaceae"
## [3,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Muribaculaceae"
## [4,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Bacteroidaceae"
## [5,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Rikenellaceae"
## [6,] "Bacteria" "Bacteroidota" "Bacteroidia" "Bacteroidales" "Muribaculaceae"
## Genus
## [1,] "Duncaniella"
## [2,] "Duncaniella"
## [3,] "Muribaculum"
## [4,] "Bacteroides"
## [5,] "Alistipes"
## [6,] "Muribaculum"
GG2
gg2_mat <- assignTaxonomy(
seqtab_nochim,
refFasta = gg2_train_fasta
)
saveRDS(gg2_mat, base::file.path(base_dir, "DADA2_taxonomy_matrix_GG2.rds"))
to_preview <- gg2_mat # Removing sequence rownames for display only
rownames(to_preview) <- NULL
head(to_preview)
## Kingdom Phylum Class Order
## [1,] "d__Bacteria" "p__Bacteroidota" "c__Bacteroidia" "o__Bacteroidales"
## [2,] "d__Bacteria" "p__Bacteroidota" "c__Bacteroidia" "o__Bacteroidales"
## [3,] "d__Bacteria" "p__Bacteroidota" "c__Bacteroidia" "o__Bacteroidales"
## [4,] "d__Bacteria" "p__Bacteroidota" "c__Bacteroidia" "o__Bacteroidales"
## [5,] "d__Bacteria" "p__Bacteroidota" "c__Bacteroidia" "o__Bacteroidales"
## [6,] "d__Bacteria" "p__Bacteroidota" "c__Bacteroidia" "o__Bacteroidales"
## Family Genus
## [1,] "f__Muribaculaceae" "g__Duncaniella"
## [2,] "f__Muribaculaceae" "g__Duncaniella"
## [3,] "f__Muribaculaceae" "g__UBA7173"
## [4,] "f__Bacteroidaceae" "g__Bacteroides_H_857956"
## [5,] "f__Rikenellaceae" "g__Alistipes_A_871400"
## [6,] "f__Muribaculaceae" NA