Я хочу иметь возможность манипулировать объектами в классе 'phylo' - т.е. округлить / превратить мои значения начальной загрузки из десятичных чисел (.998) в проценты (99%)

Я использую RStudio, программы Ape и phytools, Я сгенерировал дерево с 500 репликами начальной загрузки, хранящимися в объекте класса phylo,

куда cw это имя моего дерева, я пробовал следующее:

round(cw, digits = 2)

и я получаю следующее сообщение об ошибке:

Ошибка в цикле (cw, цифры = 2): нечисловой аргумент математической функции

Я чувствую, что это, вероятно, очень простая манипуляция, но я не уверен, как туда добраться.

1 ответ

Трудно сказать без воспроизводимого примера, но я думаю, что ваши результаты начальной загрузки, вероятно, хранятся в $node.label подмножество вашего дерева.

Вы можете попробовать следующее:

## Are the bootstraps in the $node.label object?
if(!is.null(cw$node.label)) {
    ## Are they as character or numeric?
    class(cw$node.label)
}

Если они являются числовыми значениями:

cw$node.label <- round(cw$node.label, digits = 2)

Если они персонажи, вы, вероятно, можете заставить их (это может привести к некоторым NA)

cw$node.label <- round(as.numeric(cw$node.label), digits = 2)
Другие вопросы по тегам