The Poisson-Kolmogorov-Smirnov test (PKS Test) software performs a one sample Kolmogorov-Smirnov test for Poisson distribution with estimated parameter to an ensemble of phylogenetic trees that has been generated by Bayesian phylogeny inference, and was designed to directly verify whether a phylogeny is clock-like following a Poisson law.
Publication: A Kolmogorov-Smirnov test for the molecular clock based on Bayesian ensembles of phylogenies
The implementation of the PKS test was done in Python 2.7 with the libraries Numpy, Pylab, Matplotlib, Tkinter to perform the calculations, plotting and visual interface. It was developed by Fernando Marcon Passos under supervision of Marcelo R. S. Briones and Fernando M. Antoleli Jr. at the Laboratory of Evolutionary Genomics and Biocomplexity.
It imports the output NEXUS (*.nex) files generated by MrBayes, extract the branch lengths from the ensemble of tree, which is sorted according to their log-likelihood scores from the lowest to the highest.
The user must select the files through the Open button.
Once the files is selected, the user must specify the parameters:
- Percetange of trees in which the analysis will be done, and
- the confidence level desired. The PKS critical values are computed using the tables of Campbell and Oprian (1979). The user may choose one of the three possible significance levels α: 10%, 5% and 1%.
Both parameters has default values: 30 % of the available trees and 0.95 for the confidence level.
The program outputs the following information: (i) the mean value and variance of the log-likelihood scores of the ensemble of trees; (ii) the mean and the variance of the ECD of branch lengths, measured in number of substitutions; (iii) the PKS statistics DPKS and the PKS critical value Dα for the chosen significance level.
Finally, it is possible to plot the ECD of branch lengths and the expected Poisson cumulative distribution, through the Plot button.
Inside the folder with all the files downloaded from github, type on terminal: $ python PKS_Test.py
* Python 2.7
* scipy
* PyQt5
* python-kt
* pylab
* collections
* matplotlib
* numpy
There is a folder (Input Exemple Files) containing files generated by the MrBayes program in which the user can use to test the program.