DBSCAN-SWA:一行命令识别并注释溶源噬菌体

DBSCAN-SWA: an integrated tool for rapid prophage detection and annotation

doi: https://doi.org/10.1101/2020.07.12.199018

介绍

DBSCAN-SWA是一个结合了具有噪音的密度聚类算法(density-based spatial clustering of applications with noise, DBSCAN-SWA)和滑动窗口算法(sliding window algorithm, SWA)的工具,可以在细菌基因组中识别溶源噬菌体。

DBSCAN-SWA接受multi-FASTA和GBK两种格式的输入。DBSCAN-SWA会对未经注释的multi-FASTA文件进行注释。

之后,DBSCAN算法可以检测噬菌体蛋白质簇,其具有形成溶源噬菌体簇所需的最小数量的类噬菌体(phage-like)基因(设置为6个蛋白质作为默认参数值)和同一簇内两个相邻基因之间的最大空间距离度(设置为3000 bps作为默认参数值),这反映了溶源噬菌体区域内的蛋白质密度。这两个参数是通过使用基于184个人工选择的溶源噬菌体区域的梯度方法,从6到10个蛋白质尝试最小溶源噬菌体大小和从3000到10000 bp尝试蛋白质密度得来的。考虑到来自不同细菌物种的溶源噬菌体的生物学特征可能因情况而异,DBSCAN-SWA支持用户灵活修改DBSCAN的这两个关键参数。

SWA算法被用来扫描基因库文件中与噬菌体相关的特定关键蛋白质,如“蛋白酶(protease)”、“整合酶(integrase)”、“转座酶(transposase)”、“终止酶(terminase)”、“裂解酶(lysis)”、“细菌素(bacteriocin)”和其他关键噬菌体结构基因。在60个蛋白质的移动窗口中至少有6个关键蛋白质的区域被认为是假定的溶源噬菌体区域。

溶源噬菌体区域的边界被确定为第一个和最后一个出现的关键蛋白质的位置。因为整合酶通常在温和噬菌体中编码,通常决定整合位点的特异性,所以将检查假定的附着位点,以寻找含有整合酶的假定溶源噬菌体簇。使用整合酶蛋白作为锚,因为每个簇包含一个整合酶,簇中10个上游和下游蛋白的序列将被提取,以使用BLASTN检测假定的attL-attR对。具有最高位分数和长度> =12 bp的attL-attR对,被认为是溶源噬菌体区域的假定att位点。最后,基于检测到的类噬菌体(phage-like)基因和溶源噬菌体内注释的分类信息,每个溶源噬菌体区域通过多数投票被分配一个分类。

优势

效率高(high efficiency)

大约需要1.35分钟~6.8分钟来检测完整细菌基因组中的溶源噬菌体(1.2 Mbp~7 Mbp)。

高召回率(high recall)

获得了100%极好的召回率

适用于高通量测序数据(Suitable for high-throughput sequencing data)

封装良好,易于安装.适用于完整和不完整测序的基因组

提供噬菌体注释(Provide phage annotation)

提供了一个定制的噬菌体数据库,以方便溶源噬菌体区域的注释

用户友好的可视化(User-friendly visualizations)

提供了一个用户友好的交互式超文本标记语言页面,用于在基因组浏览器中浏览溶源噬菌体,并在表格中提供详细的溶源噬菌体信息和细菌-噬菌体相互作用

自由修改的参数(Freely modified parameters)

使用户能够调整类噬菌体(phage-like)蛋白识别、att位点识别和噬菌体注释的参数

安装

需要的工具的版本

  • python3

  • blast+ > 2.8

  • perl=5.22

  • java

# 下载DBSCAN-SWA
get clone https://github.com/HIT-ImmunologyLab/DBSCAN-SWA# 下载python工具包
sudo apt install python3-biopython
sudo apt install python3-numpy
sudo apt install python-sklearn# 安装prokka,推荐使用conda安装
conda install prokka# (源码安装prokka)下载prokka
git clone https://github.com/tseemann/prokka.git
# 安装依赖关系
sudo apt-get -y install bioperl libdatetime-perl libxml-simple-perl libdigest-md5-perl
# 安装perl包XML
sudo bash
export PERL_MM_USE_DEFAULT=1
export PERL_EXTUTILS_AUTOINSTALL="--defaultdeps"
perl -MCPAN -e 'install "XML::Simple"'
# 自动搜索并添加数据库
prokka --setupdb
# 测序数据库
prokka --listdb

配置

/path/to 请替换为你下载软件的目录

## 添加环境变量,打开.bashrc文件,添加
export PATH=/path/to/ncbi-blast-2.10.0+/bin:$PATH
export PATH=$PATH:/path/to/DBSCAN-SWA/bin
export PATH=$PATH:/path/to/DBSCAN-SWA/software/diamond
export PATH=$PATH:/path/to/prokka/bin
## 修改权限
chmod u+x /path/to/DBSCAN-SWA/bin/dbscan-swa
chmod u+x /path/to/DBSCAN-SWA/bin/makeblastdb
chmod u+x /path/to/DBSCAN-SWA/software/diamond/diamond

使用

# 使用dbscan-swa命令
dbscan-swa --input <bac_path> --output <outdir> --prefix <prefix>
# 使用python脚本
python3 <path>/dbscan-swa.py --input <bac_path> --output <outdir> --prefix <prefix>

输出文件

总结文件

_DBSCAN-SWA_prophage_summary.txt

总结文件一个概述性的文件,其中包含了bacteria_id, bac_def, genome_size, prophage_end, key_proteins, best_hit_species, CDS_number, attl_region和attr_region这些信息。

prophage文件

_DBSCAN-SWA_prophage.txt

溶源噬菌体文件主要介绍其中溶源噬菌体的蛋白质的情况,包含了prophage_protein_ID, prophage_protein_product, key_proteins, hit_protein_id, hit_species, identity和evalue这些信息。

prophage DNA序列文件

_DBSCAN-SWA_prophage.fna

溶源噬菌体序列文件是一个fasta文件,里面是识别为溶源噬菌体的DNA序列。

prophage 蛋白质序列文件

_DBSCAN-SWA_prophage.faa

溶源噬菌体蛋白质序列文件是一个fasta,里面包含了识别为溶源噬菌体的氨基酸序列。

参考文献

Rui Gan, Fengxia Zhou, Yu Si, Han Yang, Chuangeng Chen, Jiqiu Wu, Fan Zhang & Zhiwei Huang. (2020). DBSCAN-SWA: an integrated tool for rapid prophage detection and annotation. bioRxiv, 2020.2007.2012.199018, doi: https://doi.org/10.1101/2020.07.12.199018

Github主页:https://github.com/HIT-ImmunologyLab/DBSCAN-SWA

Prokka安装

延伸阅读

PHASTER http://phaster.ca/ (需科学上网)

Arndt, David, et al. “PHASTER: a better, faster version of the PHAST phage search tool.” Nucleic acids research 44.W1 (2016): W16-W21.

Zhou, You, et al. “PHAST: a fast phage search tool.” Nucleic acids research 39.suppl_2 (2011): W347-W352.

猜你喜欢

10000+:菌群分析 宝宝与猫狗 梅毒狂想曲 提DNA发Nature Cell专刊 肠道指挥大脑

系列教程:微生物组入门 Biostar 微生物组  宏基因组

专业技能:学术图表 高分文章 生信宝典 不可或缺的人

一文读懂:宏基因组 寄生虫益处 进化树

必备技能:提问 搜索  Endnote

文献阅读 热心肠 SemanticScholar Geenmedical

扩增子分析:图表解读 分析流程 统计绘图

16S功能预测   PICRUSt  FAPROTAX  Bugbase Tax4Fun

在线工具:16S预测培养基 生信绘图

科研经验:云笔记  云协作 公众号

编程模板: Shell  R Perl

生物科普:  肠道细菌 人体上的生命 生命大跃进  细胞暗战 人体奥秘

写在后面

为鼓励读者交流、快速解决科研困难,我们建立了“宏基因组”专业讨论群,目前己有国内外5000+ 一线科研人员加入。参与讨论,获得专业解答,欢迎分享此文至朋友圈,并扫码加主编好友带你入群,务必备注“姓名-单位-研究方向-职称/年级”。PI请明示身份,另有海内外微生物相关PI群供大佬合作交流。技术问题寻求帮助,首先阅读《如何优雅的提问》学习解决问题思路,仍未解决群内讨论,问题不私聊,帮助同行。

学习16S扩增子、宏基因组科研思路和分析实战,关注“宏基因组”

点击阅读原文,跳转最新文章目录阅读

DBSCAN-SWA:一行命令找到溶源噬菌体相关推荐

  1. php swa,科学网—DBSCAN-SWA:一行命令找到溶源噬菌体 - 刘永鑫的博文

    DBSCAN-SWA:一行命令识别并注释溶源噬菌体 DBSCAN-SWA: an integrated tool for rapid prophage detection and annotation ...

  2. 一行命令装下所有「炼丹」工具及依赖项,就靠这个免费软件源了|教程

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI 相信不少 ...

  3. pip换源命令(一行命令完成)

    方法: 直接在"命令行窗口"键入下列命令即可完成永久换源 . 换源命令: pip config set global.index-url https://pypi.tuna.tsi ...

  4. 一行命令获取当前JVM所有可设置的参数以及当前默认值

    2019独角兽企业重金招聘Python工程师标准>>> 一行命令获取当前JVM所有可设置的参数以及当前默认值 博客分类: java jvm 一行命令获取当前JVM所有可设置的参数以及 ...

  5. OpenAI开放GPT-3微调功能,一行命令就能实现!正确率最高提升4倍

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 明敏 发自 凹非寺 量子位 报道 | 公众号 QbitAI 刚刚Op ...

  6. 一行命令堆出你的新垣结衣,不爆肝也能创作ASCII Art

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 兴坤 发自 凹非寺 量子位 报道 | 公众号 QbitAI 万恶之源 ...

  7. 一行命令,瞬间从“马赛克”到高清影像

    如上图,从100x133pix→400x532pix,除了肉眼可见的清晰,拥有可以将分辨率提升400%的技术到底意味着什么? 它意味着: 老照片.老电影.动漫等画质可快速提升,分辨率自由调节 产业算法 ...

  8. 【一行命令】ubuntu 16.04 LTS安装pip3

    简述 一般使用的下面的那行命令,会比较卡. 所以需要先修改镜像 apt为国内的镜像. [2018/10/11完成] ubuntu切换国内镜像源,加速apt-get下载速度 一行命令 完成上面的步骤之后 ...

  9. GitHub 5W 星:一行命令下载全网视频的两个开源项目

    大家好,我是你们的 猫哥,那个不喜欢吃鱼.又不喜欢喵 的超级猫 ~ 前言 相信大多数人都有想下载某个网站上的视频的想法. 比如  B站.优酷.YouTube.腾讯视频等网站上的优质视频. 但是大多数视 ...

最新文章

  1. 【django】自定义中间件
  2. android drawableleft 垂直居中,Android TextView前加图标垂直居中第一行(仿大众点评购买须知/提示语)...
  3. 一次二次开发中的经验与教训(二)
  4. python二值化 感兴趣区域_Python+OpenCV感兴趣区域ROI提取方法
  5. 三个剩两个,两个剩一个,最后一个都没剩下。
  6. mysql 字段 as_mysql 字段as详解及实例代码
  7. C#设置系统日期时间格式
  8. vue极致打包_vue 各种打包坑
  9. dos进入mysql不记得密码_windos mysql 忘记密码,无密码登录,重新登录
  10. mysql的round_MySQL的ROUND函数
  11. Scrapy爬虫之网站图片爬取
  12. 《Web安全之深度学习实战》笔记:第三章 循环神经网络
  13. 五种流行虚拟化桌面优缺点PK
  14. 解决java关键字和bean变量名内容冲突的神器
  15. PartyOK酒水知识大全
  16. 希望越大失望越大?iPhone 4S详情解析
  17. java读取excel 支持所有版本
  18. Google Cloud的专业架构师和专业云工程师认证经验分享
  19. STM32调试问题:无法读写 AT24C256 数据
  20. Ubuntu如何修改grub启动项

热门文章

  1. 三洋服务器显示F6,格力空调故障代码f6什么原因
  2. 哪吒汽车的技术发布会都发布了什么?纯干货抢先看
  3. 【FFmpeg 系列】 SDL 音视频渲染(七)
  4. 【TREC】TREC LOG
  5. Ubuntu 9.10 更新源(ubuntu yuan)
  6. SQL中单引号和双引号
  7. java的mysql语句规范_JAVA语言编程格式高级规范
  8. c语言 dict数据类型,Python开发基础之Python常用的数据类型
  9. PHY芯片88E1512之FPGA
  10. 什么是伪静态?网站伪静态有什么作用?