真核微生物基因序列鉴定工具EukRep工具的安装和详细使用方法

本文主要是介绍真核微生物基因序列鉴定工具EukRep工具的安装和详细使用方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

介绍

EukRep是一种用于鉴定并分析环境中的真核微生物的工具。它基于16S rRNA基因序列,可以帮助研究人员确定和分类环境样品中存在的真核微生物群落。

EukRep 从宏基因组数据集中分类真核和原核序列

安装

要求Python3 推荐使用conda安装

$ conda create -y -n eukrep-env -c bioconda scikit-learn==0.19.2 eukrep

通过pip安装(需要scikit-learn v 0.19.2版本):

$ pip install EukRep

示例用法 从fasta文件中识别并输出预测为真核起源的序列:

$ EukRep -i <fasta格式的序列> -o <真核序列输出文件>

从fasta文件中识别并同时输出真核和原核起源的序列:

$ EukRep -i <fasta格式的序列> -o <真核序列输出文件> --prokarya <原核序列输出文件>

获取真核生物bins EukRep旨在作为大型分析流程的一部分使用。为了实现对已鉴定出的真核连续体进行高质量基因预测和分箱,如“从复杂自然微生物群落中重构真核生物基因组”(West等人,在审稿中)所述,请参阅方法部分:Genome-reconstruction for eukaryotes from complex natural microbial communities | bioRxiv

或者

查看提供的示例工作流程(正在进行中):GitHub - patrickwest/EukRep_Pipeline

调整识别严格度 通过-m参数可以调整识别真核连续体的严格度。以下展示了严格、平衡和宽松模式下的假阳性率(FPR)和假阴性率(FNR)。默认设置为平衡模式。在0.6.5版本之前,默认为宽松模式。

序列长度严格模式平衡模式宽松模式
20kbFPR, FNRFPR, FNRFPR, FNR
5kbFPR, FNRFPR, FNRFPR, FNR

注:以上数据是通过将EukRep应用于来自模拟新门类基因组的20kb和5kb片段化支架上获得的。

重要注意事项 根据我们的经验,大多数宏基因组样本中并未包含真核生物基因组;然而,由于EukRep存在假阳性率,即使在这种情况下,您仍可能得到输出结果。

使用流程

 

以下是一个名为euk_pipeline.sh的示例Bash脚本,其中包含了以下所有步骤。

要求:

  1. 具有每个序列的覆盖信息的预组装Shotgun元基因组样本。
  2. EukRep
  3. CONCOCT或metabat
  4. genemark-ES
  5. MAKER2
  6. BUSCO 可选(但建议):
  7. pyenv

使用EukRep分类 运行EukRep来对预组装的Shotgun元基因组样本进行处理: EukRep -i metagenome.fa -o euk_contigs.fa 如果你有一个非常复杂或碎片化的元基因组样本,建议降低最小contig大小:

 EukRep -i metagenome.fa -o euk_contigs.fa --min 1000

自动分bin 这一步对于分离样本中的多个真核基因组非常重要。 在基因预测之前,分离基因组是非常重要的,以获取尽可能高质量的基因预测结果。 需要每个序列的覆盖信息。 使用CONCOCT执行:

concoct --coverage_file euk_contig_cov.txt --composition_file euk_contigs.fa 
mkdir clusters 
python /path/to/CONCOCT/scripts/extract_fasta_bins.py --output_path ./clusters/ euk_contigs.fa clustering_gt1000.csv 

使用metabat执行:

metabat -a euk_contig_cov.txt -i euk_contigs.fa -o bin -t 6

通过bin大小进行筛选 在这个阶段,我们发现将小于2.5 Mbp的任何bin过滤掉非常有用。这种过滤可以消除大多数假阳性。特别是如果使用CONCOCT,因为CONCOCT会将每个序列分bin,通常会生成许多非常小的bin。

训练GeneMark-ES

perl gmes_petap.pl --ES -min_contig 10000 --sequence bin_1.fa -min_contig

选项指定用于训练bin的基因预测模型的contig的最小长度。您不需要使用bin的每个contig,但是如果您的contig少于阈值,训练可能会失败。许多来自元基因组的bin可能会非常碎片化,因此可能需要调整此选项。

使用训练后的GeneMark-ES模型和MAKER2预测基因 MAKER使用控制文件。至少建议按以下方式修改它们以使用RepeatMasker和GeneMark-ES来预测基因: 在'maker_opts.ctl'文件中:

keep_preds=1 
gmhmm=/path/to/output/gmhmm.mod

然后,使用以下命令以6个核心运行MAKER:

maker -g bin_1.fa -c 6 
cd *.maker.output 
fasta_merge -d *_master_datastore_index.log -o bin_1 

为了进一步改善基因预测结果,MAKER能够整合相关生物体的同源蛋白质、转录组证据以及其他诸如AUGUSTUS等从头预测的基因预测器。为获取高质量的基因预测结果,通常最好利用尽可能多的这些证据线索。

对于许多元基因组样本,执行从头预测基因可能是唯一的可用选项。

运行BUSCO

python3 BUSCO.py -i *.maker.proteins.fasta -l eukaryota_odb9 -o bin_1 -m prot

BUSCO将在您的bin中查找单拷贝正交基因(SCGs),给出完整性的估计(以及具有重复单拷贝基因的污染的粗略估计)。 -l指定要使用的SCGs的谱系集。通常我们使用eukaryota_odb9,因为它是最通用的,但是如果您对您的bin属于什么类型的生物有更好的了解,可以使用更具体的谱系集。

这篇关于真核微生物基因序列鉴定工具EukRep工具的安装和详细使用方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/576050

相关文章

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

JavaScript中的高级调试方法全攻略指南

《JavaScript中的高级调试方法全攻略指南》什么是高级JavaScript调试技巧,它比console.log有何优势,如何使用断点调试定位问题,通过本文,我们将深入解答这些问题,带您从理论到实... 目录观点与案例结合观点1观点2观点3观点4观点5高级调试技巧详解实战案例断点调试:定位变量错误性能分

使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解

《使用Python批量将.ncm格式的音频文件转换为.mp3格式的实战详解》本文详细介绍了如何使用Python通过ncmdump工具批量将.ncm音频转换为.mp3的步骤,包括安装、配置ffmpeg环... 目录1. 前言2. 安装 ncmdump3. 实现 .ncm 转 .mp34. 执行过程5. 执行结

Python中 try / except / else / finally 异常处理方法详解

《Python中try/except/else/finally异常处理方法详解》:本文主要介绍Python中try/except/else/finally异常处理方法的相关资料,涵... 目录1. 基本结构2. 各部分的作用tryexceptelsefinally3. 执行流程总结4. 常见用法(1)多个e

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

Java中的抽象类与abstract 关键字使用详解

《Java中的抽象类与abstract关键字使用详解》:本文主要介绍Java中的抽象类与abstract关键字使用详解,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录一、抽象类的概念二、使用 abstract2.1 修饰类 => 抽象类2.2 修饰方法 => 抽象方法,没有

MyBatis ParameterHandler的具体使用

《MyBatisParameterHandler的具体使用》本文主要介绍了MyBatisParameterHandler的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一、概述二、源码1 关键属性2.setParameters3.TypeHandler1.TypeHa

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完