生信人

找回密码
立即注册
搜索
热搜: 活动 交友 discuz
发新帖

0

收听

12

听众

318

主题
发表于 2023-4-27 21:49:40 | 查看: 1957| 回复: 0
一、下载案例数据
  1. mkdir RAW_READS;cd RAW_READS
  2. axel -n 100 http://ftp.sra.ebi.ac.uk/vol1/fastq/ERR011/ERR011347/ERR011347_1.fastq.gz
  3. axel -n 100 http://ftp.sra.ebi.ac.uk/vol1/fastq/ERR011/ERR011347/ERR011347_2.fastq.gz

  4. axel -n 100 http://ftp.sra.ebi.ac.uk/vol1/fastq/ERR011/ERR011348/ERR011348_1.fastq.gz
  5. axel -n 100 http://ftp.sra.ebi.ac.uk/vol1/fastq/ERR011/ERR011348/ERR011348_2.fastq.gz

  6. axel -n 100 http://ftp.sra.ebi.ac.uk/vol1/fastq/ERR011/ERR011349/ERR011349_1.fastq.gz
  7. axel -n 100 http://ftp.sra.ebi.ac.uk/vol1/fastq/ERR011/ERR011349/ERR011349_2.fastq.gz
  8. #解压缩
  9. gunzip *.gz
复制代码

二、软件使用
  1. 模块介绍: https://github.com/bxlab/metaWRAP/blob/master/Module_descriptions.md
  2. 使用说明: https://github.com/bxlab/metaWRAP/blob/master/Usage_tutorial.md
复制代码
1 Read_qc 质控以及去除宿
       该模块可以用于数据质控过滤以及去除参考基因组。输入 illumina 测序 reads。
默认使用 Trim-galore 进行切出 adapter 以及低质量 reads。然后比对至人基因组,使用软件为 bmtagger,去除宿主。 最后使用 FASTQC 生成质控报告。

  1. #脚本~/miniconda3/envs/metawrap-env/bin/metawrap-modules/

  2. mkdir READ_QC
  3. metawrap read_qc -1 RAW_READS/ERR011347_1.fastq -2 RAW_READS/ERR011347_2.fastq -t 24 -o READ_QC/ERR011347
  4. metawrap read_qc -1 RAW_READS/ERR011348_1.fastq -2 RAW_READS/ERR011348_2.fastq -t 24 -o READ_QC/ERR011348
  5. metawrap read_qc -1 RAW_READS/ERR011349_1.fastq -2 RAW_READS/ERR011349_2.fastq -t 24 -o READ_QC/ERR011349
复制代码
      循环处理多样品,编辑1qc.sh
  1. #! /bin/bash

  2. for F in RAW_READS/*_1.fastq; do
  3.         R=${F%_*}_2.fastq
  4.         BASE=${F##*/}
  5.         SAMPLE=${BASE%_*}
  6.         metawrap read_qc -1 $F -2 $R -t 24 -o READ_QC/$SAMPLE
  7. done       

  8. bsub -q fat -n 24 -o %J.log -e %J.err sh 1qc.sh
复制代码
      查看报告,每个样品中post-QC_report以及pre-QC_report目录
       转移处理过的reads

  1. mkdir CLEAN_READS
  2. for i in READ_QC/*; do
  3.         b=${i#*/}
  4.         mv ${i}/final_pure_reads_1.fastq CLEAN_READS/${b}_1.fastq
  5.         mv ${i}/final_pure_reads_2.fastq CLEAN_READS/${b}_2.fastq
  6. done
复制代码
2 基因组拼接
       组装模块包含 metaSPAdes 与 MegaHit (默认)两个组装软件。 metaSPAdes 的结果适合大部分样品,而 megahit 更加节省内存,运行更快,适合更大的数据集。为了简化参数的设置,megahit 会重新对组装结果根据长度进行排序,并修改 ID。最后将长度小于 1000bp 的去除掉。使用 quast 生成报告。

  1. cat CLEAN_READS/ERR*_1.fastq > CLEAN_READS/ALL_READS_1.fastq
  2. cat CLEAN_READS/ERR*_2.fastq > CLEAN_READS/ALL_READS_2.fastq

  3. #编辑metaspade.sh
  4. #! /bin/bash

  5. metawrap assembly -1 CLEAN_READS/ALL_READS_1.fastq -2 CLEAN_READS/ALL_READS_2.fastq -m 200 -t 36 --metaspades -o ASSEMBLY
  6. bsub -q fat -n 36 -o %J.log -e %J.err sh metaspade.sh
复制代码
3 kraken 物种分类
       Kraken 模块用于物种分类鉴定,之前默认使用 kraken,但是该软件消耗内存巨大,现在已经更新到 kraken2.生成的结果使用 kronagram 生成饼图。

  1. #metawrap kraken -o KRAKEN -t 36 -s 1000000 CLEAN_READS/ERR*fastq ASSEMBLY/final_assembly.fasta

  2. #编辑kraken2.sh
  3. #! /bin/bash

  4. metawrap kraken2 -o KRAKEN2 -t 36 -s 1000000 CLEAN_READS/ERR*fastq ASSEMBLY/final_assembly.fasta
  5. bsub -q fat -n 36 -o %J.log -e %J.err sh kraken2.sh
复制代码

krona 图
4 不同算法进行 binnning
       Binning 模块是 metawrap 的核心模块。软件会分别使用 MaxBin2、metaBAT2 和 CONCOCT。然后整合结果。 首先, 使用 bwa-index 对宏基因组组装结果建立索引,然后将来每个样品的测序 reads 进行比对。然后使用 samtools 进行排序和压缩,同时估计文库大小。
       metaBAT2 的 jgi_summarize_bam_contig_depths 函数用于生成 contig adundance table,然后将其转换为三个 binner 中的每一个软件的输入文件。 在 MaxBin2、 metaBAT2 和CONCOCT 使用默认设置完成 contigs 分箱后(用户也可以指定特定的分箱的软件) 。 最终的 bins 文件夹是使用格式化的 fasta 文件。 同时选择运行 CheckM 以确定分箱是否成功。CheckM 的 lineage_wf 函数用于预测必需基因并估计每个 bin 的完成和污染,并且使用自定义脚本生成每个 bin 集的易于查看的报告。

  1. #编辑binning.sh
  2. #! /bin/bash

  3. metawrap binning -o INITIAL_BINNING -t 48 -a ASSEMBLY/final_assembly.fasta --metabat2 --maxbin2 --concoct CLEAN_READS/ERR*fastq
  4. bsub -q fat -n 48 -o %J.log -e %J.err sh binning.sh

  5. insert_sizes.txt  concoct_bins        maxbin2_bins  metabat2_bins  work_files
复制代码
5 Bin_refinement binning 结果评估
       Bin_refinement 模块会将上一步 metabat2, maxbin2, and concoct bins 三个软件生成的 bin结果进行计算。首先将三个结果合并在一起。 如果结果超过 3 个,则可以进行分组。 例如可以将 1+2+3 一组, 4+5 一组。

       当进行结果评估时,最重要的是设置 minimum compleiton (-c) and maximum contamination (-x) parameters。这两个选项用来控制完整性和污染度。 默认最小完整度要达到 70%,最大包含污染度不超过 5%。

  1. metawrap bin_refinement -o BIN_REFINEMENT -t 96 -A INITIAL_BINNING/metabat2_bins/ -B INITIAL_BINNING/maxbin2_bins/ -C INITIAL_BINNING/concoct_bins/ -c 50 -x 10
  2. cat BIN_REFINEMENT/metawrap_50_10_bins.stats | awk '$2>50 && $3<10' | wc -l
复制代码
6 可视化以及提取 bins
       metaWRAP::Blobology 模块用于绘制气泡图 blobplots,也就是所有重 contigs 的 GC 与丰度图,并用系统发育信息或 bin 信息对其进行注释。
       首先,使用 Mega-BLAST 通过与 NCBI_nt 数据库进行最高置信度比对来估计每个 contig的分类。然后对该数据集建立,使用 bowtie2 进行比对。最后使用 Blobology 的gc_cov_annotate.pl 函数用于生成带有 GC、覆盖率和每个 contig 分类的 blobplot 文件。最后使用 makeblobplot 绘图。

  1. metawrap blobology -a ASSEMBLY/final_assembly.fasta -t 96 -o BLOBOLOGY --bins BIN_REFINEMENT/metawrap_50_10_bins CLEAN_READS/ERR*fastq
复制代码
7 计算 bins 丰度
       metaWRAP:uant_bins 模块快速估计多个样本中的 bin 丰度。 使用 Salmon 软件将每个样本的 reads 比对到组装结果。 估计每一个 scaffold 的丰度,以及 bin 的平均丰度。 每个样本中每个 bin 的平均丰度是通过取 bin 的 contig 丰度的长度加权平均值来计算的。得到最终的 bin 丰度表,并生成聚类热图来可视化样本间的 bin 丰度变化。

  1. metawrap quant_bins -b BIN_REFINEMENT/metawrap_50_10_bins -o QUANT_BINS -a ASSEMBLY/final_assembly.fasta CLEAN_READS/ERR*fastq
复制代码
8 re-assemble 重新组装
       Reassemble_bins 模块用于将提纯之后得到 bin 还可以通过再组装进一步改善结果。基于原始 reads 对结果优化,只有结果更优的情况,才对结果进行更新。
       首先, 调用 bwa 比对原始序列到 bin, 提取比对上组装结果中的 reads 到单独的 fastq 文件中。 然后使用 SPAdes 重新组装,并设置选项--carefull 进行精细组装。 并删除小于 1000bp的 contig。 然后使用 CheckM 评估。

  1. metawrap reassemble_bins -o BIN_REASSEMBLY -1 CLEAN_READS/ALL_READS_1.fastq -2 CLEAN_READS/ALL_READS_2.fastq -t 96 -m 800 -c 50 -x 10 -b BIN_REFINEMENT/metawrap_50_10_bins
复制代码
9 每个 bins 物种分类
       Classify_bins 模块采取一种保守但准确的物种分类 方法,首先,将所有 bin 中的 contigs合并到一个文件中, 然后使用 MegaBLAST 将 contigs 与 NCBI_nt 数据库进行比对。然后taxator-kt 使用比对结果来估计每个 contig 最可能的分类。最后,每个宏基因组箱的总体最可能的分类是从单个 contig 分类预测中估计的。每个 contig 的分类被添加到系统发育树中,根据 contig 的长度为每个分支添加权重。然后从根开始遍历树,仅当下一个分支的权重大于当前分支的 50% 时才下降分类等级,这表明该预测的最小置信度。一旦无法估计进一步的分类等级。
  1. metawrap classify_bins -b BIN_REASSEMBLY/reassembled_bins -o BIN_CLASSIFICATION -t 48
复制代码
10 Annotate_bins 功能注释
       Annotate_bins 模块对每一组 bin 进行快速的功能注释,使用 PROKKA v1.12 进行功能注释。PROKKA 会使用多种软件进行预测包括: BLAST、 HMMER、 Aragorn、 Prodigal、 tbl2asn 和Infernal。注释过程对于全部 bin 进行并行计算, 对于每个 bin, 最终返回一个 GFF 格式的注释文件,以及两个带有未翻译和已翻译基因的 fasta 文件。

  1. metaWRAP annotate_bins -o FUNCT_ANNOT -t 96 -b BIN_REASSEMBLY/reassembled_bins/
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

收藏回复 显示全部楼层 道具 举报

您需要登录后才可以回帖 登录 | 立即注册

QQ|Archiver|手机版|小黑屋|生信人 ( 萌ICP备20244422号 )

GMT+8, 2024-11-23 21:38 , Processed in 0.091082 second(s), 31 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表