【发布时间】:2017-08-08 18:07:48
【问题描述】:
我正在尝试自学如何在 R 中为历史语言学做系统发育学。我找到了一个公共数据集 (https://www.cs.rice.edu/~nakhleh/CPHL/IEDATA_112603),我想从中获取一个 Newick 格式树,这样我就可以按照以下说明将其可视化:https://www.r-phylo.org/wiki/HowTo/InputtingTrees。我在 Max OS 10.12.6 上运行 R 3.4.1。
这是我到目前为止所做的。我复制了数据并使用 R 和文本编辑器将其转换为 Nexus 数据文件。由于 Nexus(据我了解)无法区分单个字符 1 和 2 以及组合字符 12,因此我将原始数据集中超过 9 的所有值按顺序 (a-q) 转换为字母表中的字母。任何人都可以从这里下载:https://ucla.box.com/s/i4fbeagcw8lombg3xuhczfk3h0y7v54m
问题是,我找不到将原始数据解释为树的任何说明或代码或指导。我找到了一个 Python 脚本 (Convert csv to Newick tree),但我不知道 Python。谁能指出我正确的软件/库/教程的方向,或者帮助我弄清楚下一步应该是什么?
【问题讨论】:
-
按照我理解 IEDATA 链接的方式,该表包含数据而不是树表示。需要根据模型从中计算出树。历史语言学中使用了哪些模型?您转换为 Nexus 格式的数据似乎没问题。
-
谢谢。我终于找到了一位可以帮助我的同事,他确认了你的回答,Nya。我需要做的是使用 R 的 Phangorn 包中的 as.phydat() 函数将语言数据转换为“系统发育数据”。我这样做的方法是在函数中指定“type = USER”,这让我可以为数据定义自己的级别。 cran.r-project.org/web/packages/phangorn/vignettes/… 有一个更详细的示例。这仍然有点超出我的想象,但我让这些功能正常工作,所以我已经完成了。
标签: r macos phylogeny ape-phylo