¿Alguna vez ha tenido este error? -números de paréntesis izquierdo y derecho en la cadena Newick no son iguales- árbol en R

Aug 20 2020

El error anterior se produce al intentar leer un árbol. tree <- read.tree(paste0(table_dir,'tree.19.08.tre'))Intenté reproducir el error pero con otros árboles, por ejemplo, con el irisconjunto de datos de ejemplo funcionó perfectamente. El árbol se generó con write.tree(tree, file='C:/Users/J/Desktop/proj/d/t/tree.19.08.tre',append = FALSE). Puedo mirar treeen el programa FigTree (basado en javascript). Tal vez se vea un poco extraño, pero ¿por qué no puedo abrirlo en R?
¿Alguna sugerencia?

Ese es un recorte de treeen figtree, en caso de que ayude;)

Ese es el error completo:

Fehler in FUN(X[[i]], ...) : numbers of left and right parentheses in Newick string not equal
3.
FUN(X[[i]], ...)
2.
lapply(STRING, .treeBuild)
1.
read.tree(paste0(table_dir, "tree.19.08.tre"))

Respuestas

NickFankhauser Sep 06 2020 at 06:53

Tengo exactamente el mismo error al cargar un árbol que obtuve de un colega. Pero pude cargarlo usandotree <- DECIPHER::ReadDendrogram(treeFileName)

AlfPascu Nov 26 2020 at 07:42

Tuve el mismo problema y tampoco pude cargarlo DECIPHER, pero lo hice con phytools:

library(phytools)
tree = read.newick(treeFileName)

Explorando el phyloobjeto cargado me di cuenta de que el árbol no era correcto, la razón es que las hojas del árbol contenían el nombre de punto y coma, ya que es de costumbres en algunos formatos taxonómicos, ej.

d__Bacteria; p__Proteobacteria; c__Gammaproteobacteria

y el problema es que el punto y coma indica el final del árbol en formato newick . Simplemente transformando el punto y coma en otro símbolo, p. Ej.

d__Bacteria | p__Proteobacteria | c__Gammaproteobacteria

resuelve el problema.