hai mai avuto questo errore? -numeri di parentesi sinistra e destra nella stringa di Newick non uguale- albero in R

Aug 20 2020

L'errore precedente si verifica durante il tentativo di leggere un albero. tree <- read.tree(paste0(table_dir,'tree.19.08.tre'))Ho provato a riprodurre l'errore ma con altri alberi, ad esempio con il irisset di dati di esempio, ha funzionato perfettamente. L'albero è stato generato con write.tree(tree, file='C:/Users/J/Desktop/proj/d/t/tree.19.08.tre',append = FALSE). Posso guardare treenel programma FigTree (basato su javascript). Forse sembra un po 'strano, ma perché non riesco ad aprirlo in R?
Eventuali suggerimenti?

Questo è un ritaglio di treealbero di fico, nel caso in cui aiuti;)

Questo è l'errore 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"))

Risposte

NickFankhauser Sep 06 2020 at 06:53

Ho esattamente lo stesso errore durante il caricamento di un albero ricevuto da un collega. Ma sono stato in grado di caricarlo usandotree <- DECIPHER::ReadDendrogram(treeFileName)

AlfPascu Nov 26 2020 at 07:42

Ho avuto lo stesso problema e non sono riuscito a caricarlo con DECIPHERnessuno dei due, ma l'ho fatto con phytools:

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

Esplorando l' phylooggetto caricato mi sono reso conto che l'albero non era corretto, il motivo è che le foglie dell'albero contenute nel nome punto e virgola, in quanto è costume in alcuni formati tassonomici, es.

d__Bacteria; p__Proteobacteria; c__Gammaproteobacteria

e il problema è che il punto e virgola indica la fine dell'albero in formato newick . Trasformando semplicemente il punto e virgola in un altro simbolo, ad es

d__Bacteria | p__Proteobacteria | c__Gammaproteobacteria

problema risolto.