1. 功能简介
ShortBRED 是从数据中找出感兴趣的蛋白序列并计算其在数据中的丰度。在宏基因组的应用情景中,就是可以从中,或者或者中快速识别出感兴趣的蛋白序列(毒力因子,抗生素基因等)。ShortBRED 也是 的软件。
版本:v0.9.5
Github:https://github.com/biobakery/shortbred
参考文献:James Kaminski, Molly K. Gibson, Eric A. Franzosa, Nicola Segata, Gautam Dantas, and Curtis Huttenhower. High-Specificity Targeted Functional Profiling in Microbial Communities with ShortBRED." PLoS Computational Biology 11.12 (2015).
2. 软件安装
ShortBRED 是基于 python2.7.9 的 pipeline,所以需要在python2 的环境中安装。conda 安装如下:
Note1
conda 并没有安装usearch,需要自己安装,如果环境中没有。官网下载对应版本 https://www.drive5.com/usearch/, 后期可以通过 --usearch 指定路径,或者直接把 usearch 链接到bin目录下
ln -s you_usearch /your conda PATH/envs/shortbred/bin/usearch
Note2
可能还会报 ncbi-blast-2.2.28+ 中某个子功能函数的错,大部分是动态库不适配的原因,同上,直接找一个可用的blast+ ln-s 过来即可。
ShortBRED 是事先把感兴趣的蛋白库生成一个非重复的 marker 文件,当然你可以自己用创建,如果恰好是关注抗生素耐药性因子和毒力因子,可以参考作者创建的marker文件(最新是2017年)
抗生素耐药性因子基于 CARD 创建的,毒力因子是基于Victors, VFDB 和 MvirDB。
3. 软件使用
ShortBRED 使用主要分为2步:
第一步:创建感兴趣蛋白序列的 marker 文件;
第二步:从数据中搜寻并计算感兴趣蛋白丰度。
如果你已经下载官方提供的 CRAD & VF 的 marker 基因,倒可直接跳到第二步。
3.1 第一步
这一步主要是构建感兴趣蛋白序列库的marker 文件,构建方式也有3 种,主要是输入文件差异,可以是原始的蛋白fasta 文件(Method 1);也可以是蛋白文件 + blast 比对结果(Method 2),或者直接是 blast 比对结果(Method 3)。
# Method 1: Create new markers from a set of proteins of interest and a reference set of proteins.
# Method 2: Create ShortBRED markers using a set of proteins of interest, and a blast database of reference proteins.
# Method 3: Create a new set of ShortBRED markers using a previous set of blast search results.
如果是自己从VFDB 或者 CARD 官网下载蛋白序列,选 Method 1 即可。
3.2 第二步
建好marker 文件,接下来就是计算你 中目标感兴趣的基因的丰度。同样,这一步输入 可以是 reads 水平的fq or fa 文件,支持压缩文件(Method 1);也可以是蛋白序列ORFs 文件(Method 2)。如果你宏基因组的物种和功能都是基于reads 比对分析,那就选择 Method 1;如果是基于组装 & binning, 那就选得到基因集的蛋白序列,然后用Method 2。
Note3
输入文件格式,如果是fastq 的gz压缩格式,建议写成 fastq.gz 而不是简写成 fq.gz, 程序暂时还是无法识别这个后缀输入。目前已经测试支持的后缀:; 压缩格式:
#Method 1: Profile a WMS (whole metagenome sample) using ShortBRED-Quantify and a set of markers.
--wgs 可以单个fastq or fasta ; 也可以是多个clean reads fq.gz , 用空格分隔即可,eg. --wgs sampel_1.fastq.gz sample_2.fastq.gz
--markers 输入对应的蛋白序列的 marker 文件(第一步的结果)
# Method 2: Profile a set of ORFs from isolate genome (an "annotated" genome) using ShortBRED-Quantify and a set of markers.
3.3 结果解析
的输出结果文件有几个,最主要还是看 --results 参数输出的结果,比如说,shortbred_quantify.py --results shortbred_results.tsv 【指定结果文件名是shortbred_results.tsv】
#结果对应列的含义
Family - 感兴趣蛋白序列ID,既 marker 文件的ID
Count - 比对marker的数目(丰度),这里数值是 RPKMs (reads per kilobase of reference sequence per million sample reads,已经进行标准化了,后面可直接进行不同样品,不同分组的比较了。
Hits - 有效 比对 marker个数
TotMarkerLength - marker 氨基酸长度
4. 结语
ShortBRED 兼容性还是挺强大的,除了给你现成的marker 文件之后还能自定义一个,再不用担心数据库是否为最新的了。
此外,除了适合 wgs的 reads,还适合独立组装的contig, genome,所以使用场景挺广的。
最后,官网中提到一个问题:
什么时候用 shortBRED 什么时候用 HUMAnN?
你怎么看?
领取专属 10元无门槛券
私享最新 技术干货