在 R 中使用 geiger 包中的 treedata() 时出错
Error using treedata() from geiger package in R
我正在尝试 运行 以下代码行:
tree <- read.nexus("~/Dropbox/Billfishes/Analysis/Phylogenies/Fish_12Tax_time_calibrated.tre");
characterTable <- read.csv("~/Dropbox/Billfishes/Analysis/CodingTableThresh95.csv", row.names = 1);
treeWData <- treedata(tree, characterTable, sort = T);
当我上周 运行 这段代码时,它起作用了。然后我更新了我所有的包作为日常维护的一部分,现在我得到这个错误:
整数错误(最大(旧节点)):矢量大小不能无限大
另外: 警告信息:
在 max(oldnodes) 中:max 没有非缺失参数;返回 -Inf
我试过回滚到以前版本的 R(我目前 运行在 RStudio 1.0.143 中使用 R 3.4.0 版;geiger 是 2.0.6 版),阅读树作为 Newick,并尝试其他树文件,总是导致相同的错误。当我尝试使用其他树和字符数据集时,我没有收到错误。
知道这个错误是什么意思,and/or如何在不抛出此错误的情况下将此代码获取到 运行?
经过仔细查错,我发现系统发育文件中的分类单元名称是用下划线分隔的,而table中的分类单元名称使用的是驼峰。因此,错误被抛出,因为系统发育中没有分类单元映射到字符 table.
我正在尝试 运行 以下代码行:
tree <- read.nexus("~/Dropbox/Billfishes/Analysis/Phylogenies/Fish_12Tax_time_calibrated.tre");
characterTable <- read.csv("~/Dropbox/Billfishes/Analysis/CodingTableThresh95.csv", row.names = 1);
treeWData <- treedata(tree, characterTable, sort = T);
当我上周 运行 这段代码时,它起作用了。然后我更新了我所有的包作为日常维护的一部分,现在我得到这个错误:
整数错误(最大(旧节点)):矢量大小不能无限大 另外: 警告信息: 在 max(oldnodes) 中:max 没有非缺失参数;返回 -Inf
我试过回滚到以前版本的 R(我目前 运行在 RStudio 1.0.143 中使用 R 3.4.0 版;geiger 是 2.0.6 版),阅读树作为 Newick,并尝试其他树文件,总是导致相同的错误。当我尝试使用其他树和字符数据集时,我没有收到错误。
知道这个错误是什么意思,and/or如何在不抛出此错误的情况下将此代码获取到 运行?
经过仔细查错,我发现系统发育文件中的分类单元名称是用下划线分隔的,而table中的分类单元名称使用的是驼峰。因此,错误被抛出,因为系统发育中没有分类单元映射到字符 table.