专栏名称: 生信圈
关注生物医学大数据、以及数据分析方法在转化医学研究中的应用进展,讨论与生物信息相关的一切话题。
目录
相关文章推荐
51好读  ›  专栏  ›  生信圈

微生物扩增子分析流程——聚类OTU和物种注释

生信圈  · 公众号  ·  · 2017-09-12 21:00

正文



上期我们已经介绍了如何对测序下机数据进行拼接,过滤低质量,嵌合体,以及去接头等详细的操作步骤,基于上期质控后的clean序列,本期我们将介绍微生物分析流程的聚类OTU和物种注释模块。通常情况下,两端reads拼接后得到的序列数目远大于环境中物种数目,为了能够从各层级物种水平分析物种的种类和丰度,需要对序列进行聚类和注释。
1
数据及软件准备


上期去除嵌合体后的序列seqs.nonchimeras.fna文件作为这里的输入文件,并重新命名为 sample.fa

参考序列为Greengene的参考序列 97_otus.fasta 和物种分类注释 97_otu_taxonomy.txt ;

安装Qiime软件;


2
操作步骤

OTU聚类


通过设定一个阈值,将相同或者相似的序列归为一个OTU;使用Qiime软件里的pick_otus.py,并选择默认算法uclust,相似性97%(默认)进行OTU聚类

python pick_otus.py -i sample.fa --denovo_otu_id_prefix OTU -l sample_otus.log  --threads 3


参数说明

-i 输入文件;

--denovo_otu_id_prefix OTU 名的前缀;

-o 输出文件夹;

-m 聚类方法, sortmerna, mothur, trie, uclust_ref, usearch, usearch_ref, blast, usearch61, usearch61_ref,sumaclust, swarm, prefix_suffix, cdhit, uclust共14种可选,默认为uclust;

-c 聚类算法,furthest, nearest, average三种可选,默认为furthest;

-s 相似度,默认为0.97;

--minlen=MINLEN 序列最短长度,默认为64;

--usearch_fast_cluster 快速比对,默认为false;

-r 参考序列

-z 容许序列反向后聚类,默认为false;

--threads=THREADS 线程数目,默认为1。


输出文件;

sample_otus.log #日志文件,程序运行的一些参数等信息,见图1

sample_otus.txt # 聚类结果文件,第一列为OTU编号,后面为序列名称,每条序列以tab隔开,见图2

图1 日志文件

图2 聚类结果文件


选取代表序列


由于每个OTU中的序列不完全相同,因此需要选取一条代表性序列作为该OTU的序列,用于后续分析;

python pick_rep_set.py -i sample_otus.txt -f sample.fa -o sample_rep_set.fasta


参数说明

-f 输入的序列文件,即拼接获得的序列文件,fasta格式;

-m 选取代表序列的方法,可选择random, longest, most_abundant, first,默认为fisrt;

-o 输出的代表性序列文件;

-l 日志文件;

-s 基于OTU或者序列名排序,默认OTU;

-i 输入OTU聚类文件;


输出文件 sample_rep_set.fasta

物种分级注释


对每个OTU代表性序列进行注释,可以认为每个OTU近似为一个物种;

Python assign_taxonomy.py --reference_seqs_fp database/97_otus.fasta --id_to_taxonomy_fp database/97_otu_taxonomy.txt  -i sample_rep_set.fasta -o rdp_assigned_taxonomy







请到「今天看啥」查看全文