有同学和我交流离线的牛津纳米孔16S测序数据分析的问题,感慨的确这种方案还是少的,我想主要原因之前大家的印象还是相比Pacbio和短读长,成本高,准确性还是差了一点吧,16S对准确性要求还是相对高的。不过好处是,临床这种现场特别赶时间的,可以使用官方软件实时获得菌的分类结果。从同学处得到了一个测试数据,先看看质量:看起来R10版本的确比R9好很多啦,毕竟大的版本升级,因为由过一个孔变成了过两个嘛!
重新试了下之前的分析软件安装部分
这里修正下之前笔记中的问题,可能会报错这种,可能是软件版本的不兼容这种。
# 切引物
conda install -c bioconda cutadapt
cutadapt --no-indels --discard-untrimmed -a AGAGTTTGATCCTGGCTCAG -g TACGACTTAACCCCAATCGC
34th.fq.gz -o y34.fastq -j 0
# # 安装
# 软件准备
# 去接头的Porechop
git clone https://github.com/rrwick/Porechop.git
cd Porechop
python3 setup.py install
porechop -h
cd ..
#质控的NanoFilt,pip或bioconda安装
pip install nanofilt NanoPlot
#minimap2,编译或者下载预编译的二进制文件均可,这里编译
git clone https://github.com/lh3/minimap2
cd minimap2 && make
cd ..
# conda安装软件
conda install -c bioconda diamond blast seqkit last yacrd -y
#查看质量,fastq最常用,这里用官方的试试
NanoPlot -t 16 --fastq zd.fastq --plots hex dot
#去接头,4线程,这一步耗时以小时计,对于我的五年前的双核心四线程笔记本
porechop -t 16 -i zd.fastq -o trimmed.fastq
# 质控,质量值为9,长度200过滤,虽然有点低,这有两个重定向
NanoFilt -q 9 -l 200 < trimmed.fastq > cleaned.fastq
#去嵌合,先minimap2自全局比对,发现嵌合,然后yacrd去除
minimap2/minimap2 -x ava-ont -g 500 cleaned.fastq cleaned.fastq -t 16 > overlap.paf
yacrd -i overlap.paf -o report.yacrd -c 4 -n 0.4 scrubb -i cleaned.fastq -o reads.scrubb.fq
还发现和之前的处理过程类似的一个流程,意大利面。adlape95/Spaghetti: Spaghetti: in situ analysis of 16S rRNA amplicons obtained by nanopore sequencing (github.com)Spaghetti 是用于纳米孔测序数据的自动生物信息学分析以及半自动探索性分析和数据可视化的定制管道。该管道专为原位分析MinION(牛津纳米孔技术公司,ONT)获得的16S rRNA基因序列而创建。出于这个原因,意大利面包括提供快速结果并且可以在笔记本电脑上运行的工具。
更新的流程和方法
以“nanopore 16S”打开这个程序员之家搜索一下,一个打开速度挺慢,偶尔404的网站,最近亲测加个k速度能快很多(kgithub.com)。发现还是有一两个新的流程的发表的,这里分享一下。
2023新鲜出炉的流程SituSeq
一种用于远程和离线分析Nanopore生成的16S rRNA扩增子数据的工作流程。基本上由R语言搭建的流程,第一次见!使用dada2主流去噪,点赞!
预处理:工作流的第一步是预处理原始读取,其中包括连接 fastq 文件、删除引物和过滤序列的长度。预处理只需要 R语言。接下来,有两个选项:
Stream 1:将分类分配给 16S rRNA 扩增子数据。此方法只需要 R.使用 Stream1B 对分类进行汇总和可视化。Stream 2:针对包含感兴趣序列的自定义构建数据库对 Nanopore 序列执行 BLAST 搜索。此方法只需要R.使用Stream 2B对BLAST结果进行汇总和可视化。请注意,不能从包含任何空格字符的路径(指向工作目录的目录列表)运行 Stream 2A BLAST 搜索 SituSeq旨在由具有任何生物信息学经验的研究人员使用标准规格笔记本电脑实施。您所要做的就是复制并粘贴代码!https://doi.org/10.1038/s43705-023-00239-3
NanoCLUST, 一个Nextflow的流程
这个repo星最多啦,应该是个主流分析流程,Nextflow的流程,应该还是比较完善的,缺点可能是修改比较麻烦。介绍是ONT 16S 测序数据的从头聚类和共识序列生成。官方推荐docker方式,conda方式看起来要建立n个环境。
mkdir db db/taxdb
wget https://ftp.ncbi.nlm.nih.gov/blast/db/16S_ribosomal_RNA.tar.gz
tar -xzvf 16S_ribosomal_RNA.tar.gz -C db
wget https://ftp.ncbi.nlm.nih.gov/blast/db/taxdb.tar.gz
tar -xzvf taxdb.tar.gz -C db/taxdb
# 安装Nextflow
conda create --name env_nf nextflow=21.04.0
conda activate env_nf
#Using docker profile with container-based dependencies (recommended).
# 此外开始没有运行成功,主要是环境建立问题,用的conda,已经替换清华源,可能下午在同步,网络报错
nextflow run main.nf -profile test,docker
nextflow run main.nf
-profile docker
--reads 'sample.fastq'
--db "db/16S_ribosomal_RNA"
--tax "db/taxdb/"
一般笔记本的配置勉强满足分析要求,看起来服务器才能跑得6。genomicsITER/NanoCLUST: NanoCLUST is an analysis pipeline for UMAP-based classification of amplicon-based full-length 16S rRNA nanopore reads (github.com)
NanoRTax,另一个Nextflow的流程
NanoRTax 是一种分类学和多样性分析流程,最初是为 Nanopore 16S rRNA 数据构建的,并考虑了实时分析支持。它将Kraken2、Centrifuge和BLAST等最先进的分类器与下游分析步骤相结合,为正在进行的测序运行分析提供了一个框架。NanoRTax为每个分类器检索具有相同结构/格式的最终输出文件,从而实现更全面的工具/数据库比较和更好的基准测试功能。此外,NanoRTax还包括一个Web应用程序(./viz_webapp/),用于可视化完整或部分流程输出。
NanoRTax流程是使用 Nextflow 构建的,Nextflow 是一种工作流工具,可以以非常便携的方式跨多个计算基础设施运行任务。它带有 conda 环境和 docker 容器,使安装变得简单,结果高度可重复。NanoRTax
porefile,又一个Nextflow的流程
porefile包装了一堆第三方软件,以处理和分类使用牛津纳米孔测序生成的全长16S(SSU)长读段,而不是SILVAdb SSU NR99数据库,如果用户没有提供,则会即时下载。
然后通过MEGAN6 CE工具对读取进行分类,并使用动态生成的SILVA到NCBI加入映射文件。
Porefile 默认使用 SILVA SSU NR99 版本 138.1
https://github.com/microgenlab/porefile
去年发表的Emu,只能用来物种分类
鸸鹋是16S基因组序列的相对丰度估计器。该方法针对容易出错的全长读取进行了优化,但也可用于短读取数据。
https://gitlab.com/treangenlab/emu
总结一下,看起来技术上,没有太多更新,多数只是一个集成流程。如果手上有数据,或者对这个方面的分析感兴趣,测试起来呀!
本篇文章来源于微信公众号:微因