在细菌基因组中寻找基因组重排的bioinf工具

PaReBrick的Python项目详细描述


PaReBrick(并行重排和断点)


项目目标

细菌基因组在进化时间尺度上具有显著的可塑性,不同菌株的基因组中独立地发生反转、缺失、插入和重复等基因组重排,这可能是细菌适应环境变化的机制之一。 这些事件的识别需要费力的人工检查和物种模式一致性的验证。 因此,本项目的主要目标是鉴定和描述细菌基因组中发生的平行重排。在

更严格地说,我们的目标是在系统进化树上找到非凸的特征, 或者换言之,同体字。 同质化是指在进化过程中,一个角色在不同的血统中独立获得。 您可以在下面看到凸字符和非凸字符的示例:

Non-convex character
(character with homoplasy)
Convex character
(homoplasy-free character)

方法

该方法以一些菌株的共线性块和系统进化树为输入,对其进行分类 方法包括两个主要部分:

  1. 构建字符,并用同步块表示(~叶子的颜色):
    • 平衡重排(聚焦于反转)-多断点图中的搜索模式
    • 不平衡的重新排列-被认为是拷贝数的变化。在
  2. 在系统发育树上检查构造字符的凸性。 同时计算所有非凸字符的非凸性度量,并按其值排序。在

针对不平衡重排情况下的输出大小缩减和块的种类模式检测,进行了字符聚类。在

安装

PaReBrick可与pip一起安装:

pip install PaReBrick

现在您可以从任何目录以PaReBrick(或parebrick)的形式运行该工具。在

脚本参数

包括所有模块在内的项目主脚本可以作为控制台工具从任何地方运行。在

所需输入

Important for input:树和块中的标识符必须相等

--tree/t

树为newick格式,必须可由ete3库解析。 您可以阅读更多关于formats supported by ete3

--blocks_folder/-b

原始Sibelia或maf2synteny工具的输出结果为块的文件夹的路径。在

BLOCKS-OBTAIN.md-关于如何使用SibeliaZ获取同步块的说明。在

可选输入

--labels/-l

csv文件的路径,带有树标签,用于在系统发育树上显示。 必须包含两列:strainlabel。在

--output/-o

输出文件夹的路径。 默认值为./parebrick_output

输出

输出由树文件夹组成。在

  1. preprocessed_data- 在这里您可以找到blocks_coords.infercars,以获得更好的块表示和区域注释。 和用于调用平衡字符的genomes_permutations_unique.txt文件。 以及相同的数据,但采用.csv格式,以便于使用。在
  2. balanced_rearrangements_output-此文件夹包含stats.csv文件,其中包含平衡重排的所有非凸字符统计信息。 和文件夹characterstrees,字符表示为呈现的.pdf树和.csv格式。在
  3. unbalanced_rearrangements_output-此文件夹包含stats.csv文件,其中包含不平衡重排的所有非凸字符统计信息。 以及子文件夹中的characterstrees和子文件夹中呈现的.pdf树和.csv格式中的字符。在

运行和数据示例

示例数据位于example-data文件夹中。在

如何运行:

使用数据克隆所有存储库:

^{pr2}$

将目录更改为数据文件夹:

cd parallel-rearrangements/example-data/e_coli

在示例输入上运行工具:

PaReBrick -t input/tree.nwk -b input/maf2synteny-output/ -l input/labels.csv

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java矢量图像被拉伸   java如何检查为8085模拟器设置的标志   java更改动态数据列表显示的宽度   重载Java:允许使用一个varargs参数的函数和具有相同名称和一个相同类型参数的函数?   java Google应用程序引擎搜索API赋予某些字段比其他字段更高的优先级   java如何确定Textview在RelativeLayout中的位置   参数按日期排序。比较器。JAVA   继承在Java中,当类A继承类B时,堆中会发生什么   java javafx使用来自MainController或适当控制器类中其他控制器的对象   java ElasticSearch如何从3000万个文档中快速查询一个结果