R语言中二叉树的软件包叫什么啊?

Python018

R语言中二叉树的软件包叫什么啊?,第1张

rpart包,rpart包是官方推荐的一个包,它的功能就是实现递归分割和回归树。

party包,关于递归分割更为详细的包,它包含了Bagging方法,可以产生条件推断树(conditional inference tree)等;

randomForest包,实现了分类与回归树的随机森林(random forest)算法。

findtree.sh内容如下:

bash findtree.sh genelist.pep.fa

输入文件:genelist.pep.fa 是目标基因的编码的氨基酸的fa格式的文件。里面包含所有要分析的基因的蛋白序列文件。如果是DNA或RNA文件,则需要修改bmge里的 -t 后的参数,DNA就是 DNA ,蛋白质是 AA

输出文件:

genelist.pep.fa.iqtree #里面包含所有的信息,也包含最终选择使用的是哪种模型,会自动使用最佳模型

genelist.pep.fa.treefile #最终的树文件

figtree是一个java程序,可直接在window上运行。导入文件,后续修修就可以了。

ggtree是Y叔的R包,比较复杂。

ggtree可视化iqtree的结果

具体构建发育树的软件非常多,这里主要使用R软件中的tidytree, treeio和ggtree包来进行数据整合、操作和图像绘制(https:yulab-smu.github.io/treedata-book)。

系统发育树的格式非常多,不同的软件输出格式不尽相同。常见的格式有Newick,NEXUS和Phylip。具体格式见treedata-book。

treeio包主要就是用来导入和导出不同格式树文件。主要函数有:

get.fields :获取树对象中的注释信息;

get.placements :获取系统发育树定位信息(phylogenetic placement results);

get.subs :获取从父节点到子节点的遗传替换信息;

get.tipseq :获取叶节点的序列。

同时 as.phylo 和 as.treedata 能将 phylo 对象和treeio的 S4 对象相互转换。

read.beast() :读取BEAST Nexus;

read.tree() , read.newick() :读取Newick文件;

read.mega() :读取MEGA文件, read.mega_tabular() 读取MEGA表格纯文本格式文件。多数软件的输出格式均有支持,具体见包说明文档。

数据操作主要是通过 tidytree 包来完成。

ape 包是R里做系统发育分析的基础包,所以 tidytree 包提供了 as_tibble 函数来转换 ape 中的 phylo 对象。同时, full_join 函数提供了将其他信息整合到 tbl_tree 的方法,最后, as.treedata 函数将其转成 treedata 对象。

获取树相关节点信息主要是在 tbl_tree 对象中:

y %>% as.treedata %>% as_tibble

主要函数有 child, parent, offspring, ancestor, sibling and MRCA 。

merge_tree() :融合树;

full_join() :整合外部信息;

groupOTU , groupClade :对树进行分组,均可在 tbl_tree , phylo , treedata 对象上操作。

drop_tip() : 去除树中指定节点。

如果树很大,可以用 tree_subset 函数来提取部分结构展示。

ggtree包继承了ggplot2的图层概念,可以利用不同的图层来对信息进行注释。 geom_treescale :添加树枝比例(遗传距离、分化时间等);

geom_range :显示树枝长度的置信区间;

geom_tiplab :添加叶节点标签;

geom_tippoint 、 geom_nodepoint :分别为叶节点和内部节点添加符号;

geom_hilight :用矩形高亮显示分化枝;

geom_cladelabel :用条形和文字为选择的分化枝进行注释。

https://yulab-smu.github.io/treedata-book/index.html