nclark-lab / RERconverge

Analysis of convergence between organismal traits and DNA/protein sequences
GNU General Public License v3.0
44 stars 26 forks source link

Error when running getAllResiduals (incorrect pseudorooting) #68

Open laristide opened 2 years ago

laristide commented 2 years ago

Hello, I'm trying to run a RERconverge analysis on a set of gene trees from non-model organisms that were derived from a tree-based ortolog extraction algorithm, so most gene trees do not have all the species in the master (species) tree. The topologies do match the (prunned) species tree, as I reestimated branch lengths by forcing the species tree topology. I can successfully read all trees using readTrees. However, when running getAllResiduals I get the following errors:

Error in matchNodesInject(tree1, tree2) : Incorrect pseudorooting detected - use fixPseudoroot() function to correct trait tree topology

I've tried getting the residuals for individual trees (with doOnly) but I get this error for most trees. For some other trees I get, for example,

Skipping i = 3428 (no other genes with same species set)

If I instead reduce the number of trees read by readTrees , when running getAllResiduals I instead get

Error in fastLmResidMat(data, mod) : Mat::elem(): index out of bounds

Could you help me sort this out or identify where the problem stems from?

I attach a reproducible example.

Thank you very much, Leandro

example_full.zip

ChenGuangji commented 1 year ago

I have this problem too. Is there any solution?

nclark-lab commented 1 year ago

Hello, I think this problem was fixed by installing the newest version of the package. Could you try that? -Nathan

On Sep 22, 2022, at 9:18 PM, chen.guangji @.**@.>> wrote:

I have this problem too. Is there any solution?

— Reply to this email directly, view it on GitHubhttps://github.com/nclark-lab/RERconverge/issues/68#issuecomment-1255760497, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHP5F5E33FB5A65LGM6UDRTV7UOQVANCNFSM5SVNK2SA. You are receiving this because you are subscribed to this thread.Message ID: @.***>