The WEIGHBOR Homepage

Weighbor: Weighted Neighbor Joining

Created by William J. Bruno, Nicholas D. Socci, and Aaron L. Halpern.


Weighbor 1.2 is here! Better and faster than weighbor 1.0. Upgrade now! Read more.

Please cite: William J. Bruno, Nicholas D. Socci, and Aaron L. Halpern Weighted Neighbor Joining: A Likelihood-Based Approach to Distance-Based Phylogeny Reconstruction, Mol. Biol. Evol. 17 (1): 189-197 (2000).

Weighbor is a weighted version of Neighbor Joining that gives significantly less weight to the longer distances in the distance matrix. The weights are based on variances and covariances expected in a simple Jukes-Cantor model. The criterion for which pair is joined is based on a likelihood function on the distances. The resulting trees are less perturbed by adding distant taxa compared to Neighbor Joining, and negative branch lengths are avoided. The method does not suffer from long branch attraction as maximum parsimony and other methods do. The method is much faster than maximum likelihood, usually faster than maximum parsimony, and a lot slower than Neighbor Joining.


Weighbor (or weighted neighbor joining) is PHYLIP compatible. You must create a distance matrix, such as by using the PHYLIP program DNADIST, or, the least-squares method of Goldstein and Pollock.

Distances should always be given in units of substitutions per site; scaling distances by a constant can radically change the tree weighbor makes! If your distance matrix represents percent change, the values must be multiplied by .01 before passing them to weighbor. If your data includes a distance of infinity, it should be replaced by a large finite value, but not too large (to avoid numerical overflow). Distances should never be much larger than the log of the number of sites; a distance of 9 or 10 is virtually infinite.

As in Phylip, the distance matrix should have a single number on the first line that gives the number of taxa. Each subsequent line should contain the name of the taxon, followed by its distances to the other taxa. Note: taxon names should be 10 characters long or terminated by a tab or newline; longer is OK if they don't contain blank spaces (use '_' instead of ' '). The matrix should be square and symmetric, or, upper-triangular. If you have an infinite distance, just replace is by a very large value such as 9.9 or 29.9.

For more information on how to run the program, read about the parameters, and then click on the version you wish to use: UNIX or Linux, Mac or PC

If you are eager to know all of the equations that are used, see the technical documentation area.

Get weighbor Weighbor download area
Web Server We are grateful to Catherine Letondal of the Pasteur Institute for providing this service.
New! Weighbor News Comments and Success Stories: Weighbor trees in RDP!

Bill Bruno's Home Page