Ошибка при использовании treedata() из пакета geiger в 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);

Когда я запускал этот код на прошлой неделе, он работал. Затем я обновил все свои пакеты в рамках планового обслуживания, и теперь я получаю эту ошибку:

Ошибка в integer(max(oldnodes)) : размер вектора не может быть бесконечным Кроме того: Предупреждающее сообщение: In max(oldnodes): нет непропущенных аргументов для max; возвращение -Inf

Я пытался вернуться к предыдущим версиям R (в настоящее время я использую R версии 3.4.0 в RStudio 1.0.143; geiger — версия 2.0.6), считывая дерево как Newick и пробуя другие файлы дерева, всегда приводит к одной и той же ошибке. Когда я пытаюсь использовать другие наборы данных деревьев и символов, я не получаю ошибку.

Любые идеи, что означает эта ошибка, и/или как заставить этот код работать, не выдавая эту ошибку?


person Hannah O.    schedule 10.07.2017    source источник
comment
Сообщения об ошибках сами по себе трудно диагностировать. Было бы легче помочь, если бы вы предоставили воспроизводимый пример с примерными входными данными. Это не обязательно должны быть ваши собственные данные, просто то, что воспроизводит ошибку.   -  person MrFlick    schedule 10.07.2017
comment
Вот ссылка на папку с данными, которые вызывают ошибку: dropbox.com /sh/mxpbm6yie8w60fe/AADgosDs0xJUK0ym02U19rvga?dl=0   -  person Hannah O.    schedule 10.07.2017


Ответы (1)


После тщательной проверки ошибок я обнаружил, что имена таксонов в файле филогении были разделены подчеркиванием, тогда как имена таксонов в таблице использовали верблюжьи шапки. Таким образом, ошибка возникла из-за того, что ни один таксон в филогенезе не сопоставлен с таблицей символов.

person Hannah O.    schedule 10.07.2017