Я хочу иметь возможность манипулировать объектами в классе '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)