#!/bin/bash

#---------------------------------------- ILLUMINA 16S QIIME2 PIPELINE---------------------------------------------#

# 1. Import paired-end demultiplexed V3-V4 sequences and SILVA 138 Ref NR 99.
# Raw sequences
qiime tools import \
  --type 'SampleData[PairedEndSequencesWithQuality]' \
  --input-path paired_end_demultiplexed \
  --input-format CasavaOneEightSingleLanePerSampleDirFmt \
  --output-path demux.qza

# SILVA Database
qiime tools import \
 --input-path /media/sf_Lab_Microbiota_IdISSC/Resources/99_silva.fna \
 --output-path /media/sf_Lab_Microbiota_IdISSC/Resources/99_silva.qza \
 --type 'FeatureData[Sequence]' 


# 2. Quality control (QC)
qiime demux summarize \
  --i-data demux.qza \
  --o-visualization demux.qzv

# 3. Denoising with DADA2.
# Primer lengths were 16bp (F) and 24bp (R).
qiime dada2 denoise-paired \
  --i-demultiplexed-seqs demux.qza \
  --p-trim-left-f 16 \
  --p-trim-left-r 24\
  --p-trunc-len-f 280 \
  --p-trunc-len-r 240 \
  --o-table asv_wsin.qza \
  --o-representative-sequences asv_wsin-seqs.qza \
  --o-denoising-stats denoising-stats.qza \
  --p-n-threads 0

# Exporting denoisig stats.
qiime tools export --input-path denoising-stats.qza --output-path denoising-stats

# Feature table summarization and exporting.
qiime feature-table summarize --i-table asv_wsin.qza --o-visualization asv_wsin_summary.qzv
qiime tools export --input-path asv_wsin_summary.qzv --output-path asv_wsin_summary

# 4. ASVs filtering.
qiime feature-table filter-features --i-table asv_wsin.qza --p-min-frequency 2 --o-filtered-table asv.qza
qiime feature-table filter-seqs --i-data asv_wsin-seqs.qza --i-table asv.qza --o-filtered-data asv-seqs.qza

# Feature table summarization and exporting.
qiime feature-table summarize --i-table asv.qza --o-visualization asv_summary.qzv
qiime tools export --input-path asv_summary.qzv --output-path asv_summary

# 5. OTU picking (99%) with closed-reference approach.
qiime vsearch cluster-features-closed-reference \
  --i-table asv.qza \
  --i-sequences asv-seqs.qza \
  --i-reference-sequences /media/sf_Lab_Microbiota_IdISSC/Resources/99_silva_138.qza \
  --p-perc-identity 0.99 \
  --o-clustered-table otu_99.qza \
  --o-clustered-sequences otu_99-seqs.qza \
  --o-unmatched-sequences otu_99_unmatched

# Feature table summarization and exporting.
qiime feature-table summarize --i-table otu_99.qza --o-visualization otu_99_summary.qzv
qiime tools export --input-path otu_99_summary.qzv --output-path otu_99_summary
qiime tools export --input-path otu_99.qza --output-path otu_99

# 6. Collapse feature table at different taxonomyc levels.
qiime taxa collapse \
	--i-table otu_table_99.qza \
	--i-taxonomy /media/sf_Lab_Microbiota_IdISSC/Resources/99_silva_taxonomy.qza \
	--p-level 7 \
	--o-collapsed-table tax_table_99.qza

# Exporting feature table at specific taxonomyc levels.
qiime tools export --input-path tax_table_99.qza --output-path tax_table_99

# 7. Convert feature tables from biom to tsv format.
biom convert -i otu_99/feature-table.biom -o otu_99.tsv --to-tsv
biom convert -i tax_table_99.biom -o tax_table_99.txt --to-tsv

# Feature table summarization
qiime feature-table summarize --i-table otu_table_99.qza --o-visualization otu-99-summary
qiime feature-table summarize --i-table tax_table_99.qza --o-visualization tax-99-summary


