新冠病毒分型和突变分析(SARS-CoV2_ARTIC_Illumina)

SARS-CoV2_ARTIC_Illumina新冠病毒分型和突变分析

一. 本文适用于使用Artic扩增子扩增,Illumina双端测序,用于分析新冠病毒突变及分型鉴定

二. 概览:按照惯例,先上一张概览图

概览

流程输入SRR22216743_1.fastq.gz SRR22216743_2.fastq.gz

测试数据下载
NYC SARS-CoV-2 genome sequencing from human nasopharyngeal swabs**
1 ILLUMINA (Illumina HiSeq 2000) run: 28,721 spots, 5.8M bases, 1.8Mb downloads
使用NCBI官方工具sra-toolkit拆分成fastq.gz文件 fastq-dump SRR22216743 --split-3 --gzip
得到SRR22216743_1.fastq.gz SRR22216743_2.fastq.gz

参考文件,默认路径/opt/ref下
Artic-ncov2019
artic-ncov2019 primer&参考序列

GCF_009858895.2_ASM985889v3_genomic.gff GFF文件

分析流程文件(可一键导入sliverworkspace运行)及报告文件,conda环境文件下载,导入操作
运行环境docker image based on ubuntu21.04 Conda Mamba(默认使用清华源) ssh
分析软件- fastp=0.23.2
- fastqc=0.11.9
- multiqc=1.13
- bwa=0.7.17
- minimap2=2.24
- samtools=1.16.1
- ivar=1.3.1
- quast=5.2.0
- pangolin=4.1.3
输出结果multiqc_report.html 测序数据trim前后质量数据
SRR22216743.samcov.tsv reads数量,覆盖度,测序深度,baseQ mapQ
quast输出分析结果:alignment_viewer.html contig_size_viewer.html (拼接序列情况)report.html
按照序列一致性组装的新冠病毒序列 SRR22216743.consensus.fa
Panglin 根据组装的序列分析得出病毒分型信息 lineage_report.csv
samtools,ivar 根据primertrim.bam获的新冠病毒突变信息,过滤后得到 SRR22216743_variantsfiltered.tsv

环境搭建: 为了快速完成环境搭建,节省95%以上时间。

本文使用docker + conda (mamba) 作为基础分析环境,镜像获取:docker/docker-compoes 的安装及镜像构建见基于docker的生信基础环境镜像构建》,docker镜像基于ubuntu21.04构建,并安装有conda/mamba,ssh服务。并尝试初次运行时初始化安装所需软件下载所需文件(作为代价首次运行时间会较长,切需网络通畅),即实现自动初始化的分析流程。

备注:docker运行的操作系统,推荐为Linux,windows,macOS系统改下docker可能部分功能(网络)不能正常运行

# 拉取docker镜像
docker     pull     doujiangbaozi/sliverworkspace:latest# 查看docker 镜像
docker     images

基础环境配置,docker-compose.yml 配置文件,可以根据需要自行修改调整

version: "3"
services:SarsCov2:image: doujiangbaozi/sliverworkspace:latestcontainer_name: SarsCov2volumes:- /media/sliver/Data/data:/opt/data:rw                               #挂载原始数据,放SC2目录下- /media/sliver/Manufacture/SC2/envs:/root/mambaforge-pypy3/envs:rw  #挂载envs conda环境目录- /media/sliver/Manufacture/SC2/config:/opt/config:rw                #挂载config conda配置文件目录- /media/sliver/Manufacture/SC2/ref:/opt/ref:rw                      #挂载reference目录- /media/sliver/Manufacture/SC2/result:/opt/result:rw                #挂载中间文件和输出结果目录ports:- "9024:9024"                                                        #ssh连接端口可以按需修改environment:- TZ=Asia/Shanghai                                                   #设置时区- PS=20191124                                                        #修改默认ssh密码- PT=9024                                                            #修改默认ssh端口

基础环境运行

# docker-compose.yml 所在目录下运行
docker-compose up -d# 或者 
docker-compose up -d -f /路径/docker-compose.yaml# 查看docker是否正常运行,docker-compose.yaml目录下运行
docker-compose ps# 或者
docker ps

docker 容器使用,类似于登录远程服务器

# 登录docker,使用的是ssh服务,可以本地或者远程部署使用
ssh root@192.168.6.6 -p9024# 看到如下,显示如下提示即正常登录
(base) root@SliverWorkstation:~# 

三. 分析流程

1. 变量设置

#样本编号
export sn=SRR22216743
#数据输入目录
export data=/opt/data
#数据输出、中间文件目录
export result=/opt/result
#conda安装的环境目录
export envs=/root/mambaforge-pypy3/envs	
#artic primer 版本V1,V2,V3,V4,V4.1
export artic_primer_version=V4.1
#设置可用线程数
export threads=8

2. 分析前QC,看下数据质量

#conda检测环境是否存在,首次运行不存在创建该环境并安装软件
if [ ! -d "${envs}/qc" ]; thenmamba env create -f /opt/config/qc.yaml
fisource activate qcmkdir -p ${result}/${sn}/clean mkdir -p ${result}/${sn}/qcfastqc ${data}/SC2/${sn}_1.fastq.gz ${data}/SC2/${sn}_2.fastq.gz -o ${result}/${sn}/qcfastp -i ${data}/SC2/${sn}_1.fastq.gz -I ${data}/SC2/${sn}_2.fastq.gz \-o ${result}/${sn}/clean/${sn}_1_clean.fastq.gz -O ${result}/${sn}/clean/${sn}_2_clean.fastq.gz \-h ${result}/${sn}/qc/${sn}_fastp.html -j ${result}/${sn}/qc/${sn}_fastp.json fastqc ${result}/${sn}/clean/${sn}_1_clean.fastq.gz ${result}/${sn}/clean/${sn}_2_clean.fastq.gz \-o ${result}/${sn}/qc#汇总一下之前结果,得到一个总体报告
multiqc ${result}/${sn}/qc/ -f -o ${result}/${sn}/qcsource deactivate

3. 比对到参考基因组上,得到bam文件并排序

mkdir -p ${result}/${sn}/alignedif  [ ! -d "/opt/ref/artic-ncov2019" ]; thenapt-get install -y gitgit clone https://github.com/artic-network/artic-ncov2019.git "/opt/ref/artic-ncov2019"
fi#conda检测环境是否存在,首次运行不存在创建该环境并安装软件
if [ ! -d "${envs}/SC2" ]; thenmamba env create -f /opt/config/SC2.yaml
fisource activate SC2#如果没有索引,创建索引
if  [ ! -f /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta.amb ] ||[ ! -f /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta.ann ] ||[ ! -f /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta.bwt ] ||[ ! -f /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta.pac ] ||[ ! -f /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta.sa ]; thenif [ ! -f /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta ]; thencp  -f /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/SARS-CoV-2.reference.fasta \/opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fastafibwa index /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta
fibwa mem -t ${threads} \/opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta \${result}/${sn}/clean/${sn}_1_clean.fastq.gz ${result}/${sn}/clean/${sn}_2_clean.fastq.gz | \samtools sort | samtools view -F 4 -o ${result}/${sn}/aligned/${sn}.sorted.bamsamtools index ${result}/${sn}/aligned/${sn}.sorted.bam
mv  ${result}/${sn}/aligned/${sn}.sorted.bam.bai ${result}/${sn}/aligned/${sn}.sorted.bai
conda  deactivate

4. 去除artic primer (primer trim)

source activate SC2if  [ ! -f /opt/ref/artic-ncov2019/ARTIC-${artic_primer_version}.bed ]; thenif [ ! -f /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.scheme.bed ]; thencp  -r /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/SARS-CoV-2.scheme.bed \/opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.scheme.bedfiperl -ne 'my @x=split m/\t/; print join("\t",@x[0..3], 60, $x[3]=~m/LEFT/?"+":"-"),"\n";' \< /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.scheme.bed  \> /opt/ref/artic-ncov2019/ARTIC-${artic_primer_version}.bed
fiivar trim -e -i ${result}/${sn}/aligned/${sn}.sorted.bam \-b /opt/ref/artic-ncov2019/ARTIC-${artic_primer_version}.bed \-p ${result}/${sn}/aligned/${sn}.primertrimconda  deactivate

5. primer trim 排序

source activate SC2samtools sort ${result}/${sn}/aligned/${sn}.primertrim.bam \-o ${result}/${sn}/aligned/${sn}.primertrim.sorted.bamconda  deactivate

6. 获取拼接后一致性序列

source activate SC2samtools mpileup -A -d 1000 -B -Q 0 \--reference /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta \${result}/${sn}/aligned/${sn}.primertrim.sorted.bam | ivar consensus -p ${result}/${sn}/${sn}.consensus -n N -i ${sn}grep -v ">" ${result}/${sn}/${sn}.consensus.fa | grep -o -E "C|A|T|G" | wc -lconda  deactivate

7. 使用Pangolin获取序列分型信息

#conda检测环境是否存在,首次运行不存在创建该环境并安装软件
if [ ! -d "${envs}/pangolin" ]; thenmamba env create -f /opt/config/pangolin.yaml
fisource activate pangolinpangolin ${result}/${sn}/${sn}.consensus.fa --outdir ${result}/${sn} conda  deactivate

8. 获取突变信息

source activate SC2if [ ! -f "/opt/ref/GCF_009858895.2_ASM985889v3_genomic.gff" ]; thenaria2c https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/009/858/895/GCF_009858895.2_ASM985889v3/GCF_009858895.2_ASM985889v3_genomic.gff.gz -d /opt/refgzip -f  -d /opt/ref/GCF_009858895.2_ASM985889v3_genomic.gff.gz
fisamtools mpileup -aa -A -d 0 -B -Q 0 \--reference /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta \${result}/${sn}/aligned/${sn}.primertrim.sorted.bam | \ivar variants -p ${result}/${sn}/${sn}_variants -q 30 -t 0.01 -m 0 \-r /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta \-g /opt/ref/GCF_009858895.2_ASM985889v3_genomic.gffivar filtervariants -p ${result}/${sn}/${sn}_variantsfiltered ${result}/${sn}/${sn}_variants.tsvconda  deactivate

9. 获取quast报告及bam覆盖度、测序深度、baseQ、mapQ等质控信息

source activate SC2if [ ! -f "/opt/ref/GCF_009858895.2_ASM985889v3_genomic.gff" ]; thenaria2c https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/009/858/895/GCF_009858895.2_ASM985889v3/GCF_009858895.2_ASM985889v3_genomic.gff.gz -d /opt/refgzip -f  -d /opt/ref/GCF_009858895.2_ASM985889v3_genomic.gff.gz
fiquast ${result}/${sn}/${sn}.consensus.fa \-r /opt/ref/artic-ncov2019/primer_schemes/nCoV-2019/${artic_primer_version}/nCoV-2019.reference.fasta \--features /opt/ref/GCF_009858895.2_ASM985889v3_genomic.gff \--ref-bam  ${result}/${sn}/aligned/${sn}.sorted.bam \--output-dir ${result}/${sn}/quastsamtools coverage ${result}/${sn}/aligned/${sn}.sorted.bam -o ${result}/${sn}/aligned/${sn}.samcov.tsvconda  deactivate

10. 报告(可选)

在这里插入图片描述

11. 使用IGV Browser查看突变信息(可选)

在这里插入图片描述

在这里插入图片描述

四. 参考链接

https://github.com/artic-network/artic-ncov2019

https://github.com/CDCgov/SARS-CoV-2_Sequencing/tree/master/protocols/BFX-UT_ARTIC_Illumina

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/56783.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

还真不错,今天 Chatgpt 教会我如何开发一款小工具开发(Python 代码实现)

上次使用 Chatgpt 写爬虫&#xff0c;虽然写出来的代码很多需要修改后才能运行&#xff0c;但Chatgpt提供的思路和框架都是没问题。 这次让 Chatgpt 写一写GUI程序&#xff0c;也就是你常看到的桌面图形程序。 由于第一次测试&#xff0c;就来个简单点的&#xff0c;用Python…

Android中文图混排时文图的居中对齐

http://www.jianshu.com/p/2650357f7547 先上效果图 看订阅号时间发现的&#xff0c;前一阵子项目要做一个比较复杂的图文混排&#xff0c;但是最后没有做&#xff0c;今天看到&#xff0c;回过头来学习下 代码还是他们的代码&#xff0c;我就不复制了 下来说一下这种形式…

赢在微点答案专区英语_掌握这一招!快速提高英语阅读理解成绩(终生受益)...

一、经常有学生向老师倒苦水&#xff0c;说学英语花了很多时候&#xff0c;总是提不高英语成绩&#xff1f;为什么&#xff1f; 你是否还在为英语阅读成绩而烦恼呢&#xff1f; 你的阅读成绩是否还总是提不高呢&#xff1f; 你的阅读速度是不是还很慢呢&#xff1f; 你阅读的准…

Android中文图混排时文图的居中对齐 FontMetrics以及自定义ImageSpan实现

文章转自&#xff1a;http://www.sohu.com/a/150059234_611601 本文作者CnPeng的博客地址&#xff1a; http://www.jianshu.com/p/2650357f7547 这个标题有点长&#xff0c;乍一看这么个标题你可能没明白啥意思&#xff0c;且听我慢慢道来。 公司的项目中新增了一个“心动”…

实战 | Android中文图混排时文图的居中对齐 FontMetrics以及自定义ImageSpan实现

这个标题有点长&#xff0c;乍一看这么个标题你可能没明白啥意思&#xff0c;且听我慢慢道来。 公司的项目中新增了一个“心动” 的功能&#xff0c;用户初次使用时需要给一个引导页&#xff0c;就是下面图中的这个样子&#xff08;这就是做完之后的效果了&#xff09;。 在上图…

英文期刊论文翻译格式要求和文献要求

英文期刊论文翻译格式要求和文献要求 一、全文翻译&#xff0c;句式尽量简单易懂&#xff08;借助谷歌有道&#xff0c;同时借鉴前人文献写法&#xff09;1、论文的翻译不能直译。 二、套入模板&#xff0c;调整格式&#xff08;文章、参考文献&#xff09;1、论文直接粘贴到模…

时文直播:2015年通信运营业统计公报

2015年&#xff0c;我国通信运营业认真贯彻落实中央各项政策措施&#xff0c;围绕实施网络强国战略&#xff0c;推动网络提速降费&#xff0c;提升4G网络和宽带基础设施水平&#xff0c;积极推动移动互联网、IPTV等新型信息服务普及&#xff0c;全面服务国民经济和社会发展&…

FontMetrics以及自定义ImageSpan实现TextView中文图混排时文图的居中对齐

这个标题有点长&#xff0c;乍一看这么个标题你可能没明白啥意思&#xff0c;且听我慢慢道来。 公司的项目中新增了一个“心动” 的功能&#xff0c;用户初次使用时需要给一个引导页&#xff0c;就是下面图中的这个样子(这就是做完之后的效果了)。 Paste_Image.png 在上图中整体…

单词测试通关学英语的软件,推荐5款最火的英语学习类app

学习英语很累很吃力吗?小编推荐5款最火的英语学习类app,希望对你有所帮助。 如果你是高中生的话,蝶变高中是你必备的app,里面除了正常的励志电台和各科知识点外,还有历年的高考英语听力真题、高中英语课文音频、以及很多英语美文的音频。 1、推荐5款最火的英语学习类app:…

计算机专业英语邱仲潘版英语翻译,计算机英语邱仲潘

本书共分为20章&#xff0c;每章由正文、难句解释、关键词、练习和课外阅读等部分组成&#xff0c;此外&#xff0c;每章还提供了参考译文。本书由一线教师编写&#xff0c;其了解学生的知识水平、接受能力和需求点&#xff0c;而且翻译过大量计算机图书&#xff0c;有丰富的翻…

新编计算机英语,新编计算机英语

《新编计算机英语》以计算机和IT领域的*英语时文和经典原版教材为基础&#xff0c;通过精心挑选难度适中的新闻记者材料和悉心编写的学习指南&#xff0c;配以详尽的注释和练习&#xff0c;使读者能够快速掌握计算机英语的一般特点和大量专业词汇&#xff0c;并提高阅读和检索计…

快讯 | OpenAI 推出漏洞赏金计划,奖励最高 2 万美元;马斯克被曝明面上呼吁暂停 AI 研究,暗中却购买上万个 GPU 推进 AIGC 项目

一分钟速览新闻点 复旦大学与阿里云共建中国高校最大的科研智算平台 科大讯飞将于 5 月 6 日发布讯飞预训练大模型的详细信息 国家网信办就《生成式人工智能服务管理办法&#xff08;征求意见稿&#xff09;》公开征求意见 毫末智行正式发布自动驾驶生成式大模型DriveGPT O…

OpenAI向ChatGPT社区致歉:承认数据泄露 CEO称感觉糟糕

雷递网 乐天 3月26日 人工智能企业OpenAI日前发布公告&#xff0c;承认部分ChatGPT Plus服务订阅用户可能泄露部分个人隐私和支付信息。 OpenAI称&#xff0c;由于开源库中的一个错误&#xff0c;本周早些时候将ChatGPT下线&#xff0c;该错误允许一些用户看到另一个活跃用户的…

如何用 Midjourney 绘制你自己的皮克斯风格头像?

元宇宙时代&#xff0c;有个卡通形式的头像&#xff08;Avatar&#xff09;似乎是刚需了。我看到很多小伙伴都给自己弄了一个头像。大多保持了神似&#xff0c;很是羡慕。 我也想自己弄一个&#xff0c;不过雇人设计绘制太贵&#xff0c;自己画嘛&#xff0c;你知道的…… 我的…

联邦学习(FL)安全威胁

MPC、DP等&#xff1a;通过降低模型性能或系统效率为代价来确保隐私安全 一、FL安全问题 训练过程中&#xff0c;联邦学习仍然存在模型更新过程中向第三方或中央服务器透露敏感信息的情况FL协议设计存在漏洞&#xff0c;任一参与方可能获得全局参数并能控制这些参数的上传模型…

如何准备CKAD和CKA认证?

在准备 CNCF 的 CKAD 或 CKA 认证时&#xff0c;会有很多疑问&#xff0c;首先出现哪个考试&#xff0c;参考哪些资源&#xff0c;避免哪些常见错误等。尤其是如果您没有以前的知识或新手- 根据 Kubernetes 的经验&#xff0c;这可能是一个艰难的处境。InfraCloud 强烈鼓励工程…

朝鲜APT组织使用带后门IDA软件攻击安全研究人员

2021年初&#xff0c;朝鲜APT组织Lazarus通过养推特大V账号&#xff0c;配合定制开发的恶意软件0day漏洞针对安全研究人员进行了一系列的网络攻击活动&#xff0c;详细可见&#xff1a;通过社交媒体针对安全研究人员的社会工程学攻击活动。 而就在2021年11月10日&#xff0c;国…

chatgpt自己杜撰答案(sometimes)?

当我想通过filebeat将mysql表的内容同步到ELK系统中时&#xff0c;我向chatgpt询问时&#xff1a; 在我根据上述回答完成配置文件后启动filebeat后报错如下&#xff1a; ERRORinstance/beat.go:916Exiting: Error while initializing input: Error creating input. No such i…

智能聊天功能——语音聊天篇

如今大部分人都面临着来自生活各方面的压力&#xff0c;时常感到焦虑、孤独&#xff0c;有的甚至患上了抑郁症等心理疾病&#xff0c;他们无法排解&#xff0c;甚至找不到人来诉苦&#xff0c;本系统提供了语音对话功能。 在用户无聊的时候&#xff0c;可以唤醒“依米”&#x…

转【Latex】Texstudio英文拼写错误检查功能出问题的解决方法

【Latex】Texstudio英文拼写错误检查功能出问题的解决方法 2018年03月23日 22:54:49 阅读数&#xff1a;685 问题描述 最近用latex&#xff08;编辑器为Texstudio&#xff09;写论文&#xff0c;相比于本科时常用的word&#xff0c;各种方便&#xff0c;唯一不爽的是texstu…