Hi, Everyone!
I am currently running some BEAST analyses using discrete phylogeography on a
large collection of sequences, for which I am estimating the number of
transitions for each discrete trait using the Markov Jump procedure. However, I
would like to have some clarification regarding the output provided by BEAST
for the MJ location count. I have performed a uniformized run logging and
saving the complete MJ history to file.
As I understood but correct me if I am wrong, the location.count parameter expressed
in a branch is the mean of the transition counts recorded between parent and
child nodes, which is calculated according to the location with max probability
from the BSSVS. However, I found it difficult to understand the output of the
log file, which return a format of MJ counts as {1, 8.562336, Trait1, Trait2},
which I am guessing that could record 1 MJ at time 8.562336 with transition
Trait1 to Trait2.
Please, would you provide me more information about the MJ count output
and how to better interpret that?
Many thanks.
Cheers,
Antonello
P.S. just for the sake of reporting. It seems that the parsed procedure for the
MJ count from BEAUTi to the .xml is broken: the run breaks with an error
(tested using BEAST 1.8.0 to 1.8.2 and the latest build from github). It seems
that the idref for the MJ location.count is not properly defined. As an
exmaple, the following code produces an error:
<!-- Likelihood for tree given discrete trait data
-->
<markovJumpsTreeLikelihood id="location.treeLikelihood" stateTagName="location.states" useUniformization="true" saveCompleteHistory="true" logCompleteHistory="true">
<attributePatterns idref="location.pattern"/>
<treeModel idref="treeModel"/>
<siteModel idref="location.siteModel"/>
<generalSubstitutionModel idref="location.model"/>
<strictClockBranchRates idref="location.branchRates"/>
<!-- The root state frequencies
-->
<frequencyModel id="location.root.frequencyModel" normalize="true">
<generalDataType idref="location.dataType"/>
<frequencies>
<parameter id="location.root.frequencies" dimension="24"/>
</frequencies>
</frequencyModel>
<!-- START Ancestral state reconstruction
-->
<parameter id="count" value=" 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.
0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 0.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.0"/>
<!-- END Ancestral state reconstruction
-->
</markovJumpsTreeLikelihood>
<!-- END Discrete Traits Model
-->
Instead, BEAST run happily editing the idref to id="location.count".
In addition, the vector parsed identifying the initial MJ count matrix is cut
at the decimal place of a transition value (as above), alos producing BEAST to break
the run.
Failed to load parser: dr.inferencexml.trace.GeneralizedHarmonicMeanAnalysisParser
line = dr.inferencexml.trace.GeneralizedHarmonicMeanAnalysisParser
Loading additional development parsers from development_parsers.properties, which is additional set of parsers only available for development version ...
WARNING: parser - dr.inferencexml.model.DifferenceParameterParser in development_parsers.properties is duplicated, which is REPLACING the same parser loaded previously.
WARNING: parser - dr.inferencexml.model.SumParameterParser in development_parsers.properties is duplicated, which is REPLACING the same parser loaded previously.
WARNING: parser - dr.evomodelxml.operators.SubtreeJumpOperatorParser in development_parsers.properties is duplicated, which is REPLACING the same parser loaded previously.
WARNING: parser - dr.app.beagle.multidimensionalscaling.MultiDimensionalScalingLikelihood in development_parsers.properties is duplicated, which is REPLACING the same parser loaded previously.
Failed to load parser: dr.evomodel.treelikelihood.RootDiscreteStateStatistic
line = dr.evomodel.treelikelihood.RootDiscreteStateStatistic
Failed to load parser: dr.evomodel.epidemiology.casetocase.operators.InfectionBranchGibbsOperator
line = dr.evomodel.epidemiology.casetocase.operators.InfectionBranchGibbsOperator
..........................................................................................
BEAST has terminated with an error. Please select QUIT from the menu.
dr.xml.XMLParseException: Error parsing '<markovJumpsTreeLikelihood>' element with id, 'location.treeLikelihood':
Markov Jumps register parameter count is of the wrong dimension
at dr.xml.AbstractXMLObjectParser.parseXMLObject(Unknown Source)
at dr.xml.XMLParser.convert(Unknown Source)
at dr.xml.XMLParser.convert(Unknown Source)
at dr.xml.XMLParser.parse(Unknown Source)
at dr.app.beast.BeastMain.<init>(Unknown Source)
at dr.app.beast.BeastMain.main(Unknown Source)
Feb 15, 2016 12:35:49 PM dr.app.beast.BeastMain <init>
SEVERE: Parsing error - poorly formed BEAST file, seqData_BEAST.xml:
Error parsing '<markovJumpsTreeLikelihood>' element with id, 'location.treeLikelihood':
Markov Jumps register parameter count is of the wrong dimension
java.lang.RuntimeException: Terminate
at dr.app.beast.BeastMain.<init>(Unknown Source)
at dr.app.beast.BeastMain.main(Unknown Source)...
--
You received this message because you are subscribed to the Google Groups "beast-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beast-users...@googlegroups.com.
To post to this group, send email to beast...@googlegroups.com.
Visit this group at https://groups.google.com/group/beast-users.
For more options, visit https://groups.google.com/d/optout.
This means that the output provides the timings without the node/branch associated to each event. So, the easy way to extract the posterior probability and node/branch associated to each event should be to traverse the tree.
Great, thanks!
Antonello