Ошибка Picante в pblm: «Ошибка в V1 [имена строк (связанные), имена строк (связанные)]: индекс за пределами» - PullRequest
0 голосов
/ 17 октября 2018

Я пытаюсь вычислить силу сигнала, используя функцию pblm из picante (для интеграции филокома) в R. Кажется, что я не понимаю, как должен быть построен вход.Я построил простой пример для тестирования программы с двумя простыми филогенетическими деревьями (дендрограммами) и матрицей их силы ассоциации:

require(ape)
require(picante)

tree1<-read.tree(text="((C,B),A);")
tree2<-read.tree(text="((G,F),(E,D));")

web = matrix(
c(0, 5, 0, 10, 10, 0, 0, 3, 0, 0, 0, 1),
nrow=4,
ncol=3,
byrow = TRUE,
dimnames = list(c("D","E","F","G"),c("A","B","C")))

pblm(web,tree1=tree1,tree2=tree2)

Однако это приводит к следующей ошибке:

Error in V1[rownames(assocs), rownames(assocs)] : subscript out of bounds

Что не так с моим вводом в pblm?

1 Ответ

0 голосов
/ 23 октября 2018

Ошибка означает, что функция вызывает строку, которой нет в предоставленных данных.Здесь проблема заключалась в том, что матрица была транспонирована.

pblm(t(web), tree1=tree1, tree2=tree2)
...