天天看點

SMURF流程之q2-sidle(三)——資料庫準備

前面已經完成了qiime2-sidle插件的安裝,測試方法就是輸入qiime:

sidle               Plugin for kmer-based marker gene reconstruction.
           

複制

出現了上面的選項,應該就說明已經安裝成功了。

資料庫準備

資料庫準備是一勞永逸的,前面我們已經完成了資料庫過濾的步驟

準備一個區域資料庫

這一步是提取一個區域的資料庫,基于K-mer,為了提升記憶體效率,把簡并堿基和重複kmer作為一條序列。

SMURF流程之q2-sidle(三)——資料庫準備
# 首先,使用feature-classifier插件的extract-reads提取,那麼對于6V區的SMURF應該是:
# 2.2 序列提取
# 74f 315R V1-V2
qiime feature-classifier extract-reads \
 --i-sequences sidle-db-full-degen-filtered-phylum-def-sequences.qza \
 --p-f-primer TGGCGGACGGGTGAGTAA \
 --p-r-primer CTGCTGCCTCCCGTAGGA \
 --o-reads sidle-db-filt-j1.qza
 # 316F 484R V3部分
 qiime feature-classifier extract-reads \
 --i-sequences sidle-db-full-degen-filtered-phylum-def-sequences.qza \
 --p-f-primer TCCTACGGGAGGCAGCAG \
 --p-r-primer  TATTACCGCGGCTGCTGG \
 --o-reads sidle-db-filt-j2.qza
 # 486F 650R V3部分-v4部分
  qiime feature-classifier extract-reads \
 --i-sequences sidle-db-full-degen-filtered-phylum-def-sequences.qza \
 --p-f-primer CAGCAGCCGCGGTAATAC \
 --p-r-primer  CGCATTTCACCGCTACAC \
 --o-reads sidle-db-filt-j3.qza
 # 752F 911 R V5
  qiime feature-classifier extract-reads \
 --i-sequences sidle-db-full-degen-filtered-phylum-def-sequences.qza \
 --p-f-primer AGGATTAGATACCCTGGT \
 --p-r-primer  GAATTAAACCACATGCTC \
 --o-reads sidle-db-filt-j4.qza
 # 901F 1057R V6
  qiime feature-classifier extract-reads \
 --i-sequences sidle-db-full-degen-filtered-phylum-def-sequences.qza \
 --p-f-primer GCACAAGCGGTGGAGCAT \
 --p-r-primer  CGCTCGTTGCGGGACTTA \
 --o-reads sidle-db-filt-j5.qza
 # 1143F 1336R V7 V8
  qiime feature-classifier extract-reads \
 --i-sequences sidle-db-full-degen-filtered-phylum-def-sequences.qza \
 --p-f-primer AGGAAGGTGGGGATGACG \
 --p-r-primer  CCCGGGAACGTATTCACC \
 --o-reads sidle-db-filt-j6.qza
           

複制

上sidle插件,文檔介紹這裡和原方法略有差別,原算法是允許2個堿基不一緻,而這裡用的80%,作者說可以用--p-identity 參數,但是沒找到。。。

# 可以給region起個别名,看喜好起即可
 # P1
 qiime sidle prepare-extracted-region \
 --i-sequences sidle-db-filt-j1.qza \
 --p-region "P1" \
 --p-fwd-primer TGGCGGACGGGTGAGTAA \
 --p-rev-primer CTGCTGCCTCCCGTAGGA \
 --p-trim-length 100 \
 --o-collapsed-kmers sidle-db-P1-100nt-kmers.qza \
 --o-kmer-map sidle-db-P1-100nt-map.qza 
 # P2
  qiime sidle prepare-extracted-region \
 --i-sequences sidle-db-filt-j2.qza \
 --p-region "P2" \
 --p-fwd-primer TCCTACGGGAGGCAGCAG \
 --p-rev-primer  TATTACCGCGGCTGCTGG \
 --p-trim-length 100 \
 --o-collapsed-kmers sidle-db-P2-100nt-kmers.qza \
 --o-kmer-map sidle-db-P2-100nt-map.qza 
 # P3
  qiime sidle prepare-extracted-region \
 --i-sequences sidle-db-filt-j3.qza \
 --p-region "P3" \
 --p-fwd-primer CAGCAGCCGCGGTAATAC \
 --p-rev-primer  CGCATTTCACCGCTACAC \
 --p-trim-length 100 \
 --o-collapsed-kmers sidle-db-P3-100nt-kmers.qza \
 --o-kmer-map sidle-db-P3-100nt-map.qza 
 # P4
  qiime sidle prepare-extracted-region \
 --i-sequences sidle-db-filt-j4.qza \
 --p-region "P4" \
 --p-fwd-primer AGGATTAGATACCCTGGT \
 --p-rev-primer  GAATTAAACCACATGCTC \
 --p-trim-length 100 \
 --o-collapsed-kmers sidle-db-P4-100nt-kmers.qza \
 --o-kmer-map sidle-db-P4-100nt-map.qza 
 # P5
  qiime sidle prepare-extracted-region \
 --i-sequences sidle-db-filt-j5.qza \
 --p-region "P5" \
 --p-fwd-primer GCACAAGCGGTGGAGCAT \
 --p-rev-primer  CGCTCGTTGCGGGACTTA \
 --p-trim-length 100 \
 --o-collapsed-kmers sidle-db-P5-100nt-kmers.qza \
 --o-kmer-map sidle-db-P5-100nt-map.qza 
 # P6
  qiime sidle prepare-extracted-region \
 --i-sequences sidle-db-filt-j6.qza \
 --p-region "P6" \
 --p-fwd-primer AGGAAGGTGGGGATGACG \
 --p-rev-primer  CCCGGGAACGTATTCACC \
 --p-trim-length 100 \
 --o-collapsed-kmers sidle-db-P6-100nt-kmers.qza \
 --o-kmer-map sidle-db-P6-100nt-map.qza 
           

複制

這步會輸出含簡并的序列,移除重複序列和一個kmer映射檔案,可以qiime可視化,給出原始資料庫序列名稱(db-seq)、序列名稱(seq-name)、區域辨別(Kmer)、引物(fwd-primer和rev-primer)、區域(Region)和序列長度(Trim-Length)之間的關系。

# 如果參考序列不能覆寫正反向引物,可以把--p-trim-length設定為負值,增加個參數--p-reverse-complement-result 
 --i-sequences sidle-db-filt-jl.qza \
 --p-region "Batman" \
 --p-fwd-primer TATTACCGCGGCTGCTGG \
 --p-rev-primer TCCTACGGGAGGCAGCAG \
 --p-trim-length -100 \
 --p-reverse-complement-result \
 --o-collapsed-kmers sidle-db-batman-100nt-kmers.qza \
 --o-kmer-map sidle-db-batman-100nt-map.qza           

複制