Individual course in computational biology
In this course, my main goal was to compare multiple phylogenetic methods with respect to speed, simplicity and accuracy. The methods I compared include distance-based (neighbour joining, UPGMA, WPGMA), maximum parsimony and maximum likelihood algorithms. I first present my own implementation of these algorithms and then proceed to analyze the results. Biopython was used for some components and subtasks, e.g., handling the sequence alignments and plotting the trees.
I worked with aligned DNA sequences collected form multiple taxa and used different metrics (e.g., Robinson-Foulds) to compare the similarity of the resulting trees. In some cases, the official Biopython implementation was used as a baseline.