The reproducibility of the Crustacean phylogenetic analyses on open source data
Supervisor:
P. Drozdova1�1 Irkutsk State University
Authors:
A. Belyaeva2, 3, A. Zhuravlev3, 4
2 Lomonosov Moscow State University
3 Bioinformatics Institute
4 B.P. Konstantinov Petersburg Nuclear Physics Institute
Introduction
In phylogenetic studies, the problem of reproducibility of data is a major issue. This problem arises due to several factors, including the complexity of the data, the use of different methods and software packages, and the lack of standardization in reporting results. The use of different methods and software packages can lead to different results, which makes it difficult to compare and reproduce results. Additionally, the lack of standardization in reporting results makes it difficult for other researchers to reproduce the same results.
This project examined the issue of phylogenetic analysis reproducibility in a number of studies on freshwater crustaceans based on open data.
Aims and Objectives
Objectives:
Aim: The aim of this project was to repeat the phylogenetic research in certain articles and understand about reproducibility of results.
Data
1. Moskalenko: Specimens were collected by the authors of the article in 2012 and 2013 field seasons on Lake Baikal and preserved in 90% ethanol. A subset of species for sequencing was chosen to represent major lineages within Baikal amphipods, including lineages close to basal nodes. Non-Baikal freshwater palearctic Gammarus species morphologically similar to Baikal amphipods were also considered. Sequences that branched out beyond Gammarus species, namely Hyalella azteca and Dikerogammarus villosus were used as outgroups.
2. Bystřický: Individual lines of G. fossarum in their contact zone in the Western Carpathians are being studied.
There is no source data. But there is an archive already with ready alignments in supporting information: https://aslopubs.onlinelibrary.wiley.com/action/downloadSupplement?doi=10.1002%2Flno.12239&file=lno12239-sup-0007-DataS1.zip
Reproducibly extracting data from NCBI with the help of Entrez Utilities (E-Utils) is possible:
```
from Bio import Entrez
from Bio import SeqIO
Entrez.email = 'Your crustacean email@yandex.ru'
accession_numbers = ["MN005083", "MN005110", "MN005067", "MN148361", "MT110188", ....."XM_018164572", "XM_018168833"] (more details in our github)
query = " OR ".join(accession_numbers)
handle = Entrez.efetch(db="nucleotide", id=query, rettype="fasta", retmode="text")
sequences = handle.read()
```
However, transcriptome assemblies were sometimes mixed among the sequences, which had to be worked with using blastn.
Data
3. Bukin: Specimens of the amphipod G. fasciatus were collected in the littoral zone of Lake Baikal + previously published in pop-set data.
URL-link for pop-set data: https://www.ncbi.nlm.nih.gov/popset/376403838
The sequences obtained in the study were deposited in the database under the following accession numbers: MG214957, MG214958.
4. Wattier: COI sequences for the DNA-barcode region were either newly generated or derived from the literature for 4926 Gammarus fossarum individuals, from 498 sampling sites distributed throughout 19 European countries.
All these sequences were derived into three groups.
Methods
Data preparation:
Alignment + trimming:
Methods
Data concatenation and partitions:
Best-fitting evolutionary models:
Building tree + dating:
Results
Three checklists have been prepared:
In a better quality they can be found in:
Results
Checklists were also prepared for the report format for github:
In a better quality they can be found in:
Results
The article describes two new species of Baikal gammarids, Eulimnogammarus trengove sp. nov. and Eulimnogammarus tchernykhi sp. nov., with some morphology indicating a basal position within the radiation, but strangely, with further concatenation of the data, we have not to consider them due to the lack of data provided in the article. In addition, the description of datasets that was presented in the methods and materials section does not contain these two types of Baikal gammarids. In addition, a rather interesting fact is that by the type of phylogenetic trees in the article, it seems that the data was still divided into two datasets in a slightly different way (this can be judged due to the difference and the number of species under consideration).
Also to process the data from both the source and the tools obtained during the application, a few small scripts were written to generate the correct input data for the next tools in the queue of our pipeline tools. All of them are presented in the file Datasets.ipynb file. For convenience, they are designed in the form of functions.
Moskalenko
Preparing data for alignment
Results
According to one of the articles, a comparative analysis of the use of tools at different stages of our analysis was carried out.
6 tools for multiple alignment were used, as a result, the tool (MUSCLE) used by the authors of the article did not show particularly great benefits in its use:
Moskalenko
Multiple alignment
Our analysis Multiple_al.ipynb showed that kalign tool wins on all indicators based on our data.
Results
Further, at the stage of data concatenation (Data_concatenation.ipynb), it turned out that a tool like catfasta2phyml is great for getting the output of a data splitting scheme in a file.cfg for PartitionFinder, however, concatenated our data incorrectly, which did not even allow us to trim sequences using the trimAl tool. The MEGA 11 program was chosen for concatenation.
Moskalenko
Data concatenation
Trimming
Dataset 1:
Dataset 2:
All genes without gaps in the data:
Although this was not stated in the article, but by the look of our alignments, it was decided not to skip the trimming stage. This step of our pipeline is presented in the Trimming.ipynb file.
Results
In this article, this stage is skipped and it is simply written in the methods and materials section that an ML-tree is being built in MEGA7.
Our selection of the evolutionary model was performed using both ModelTest (ModelTest-NG) and ModelFinder in IQ-TREE (Evolution_model.ipynb):
In general, we believe that both tools have come to about the same thing. However, in the article, again, this point was omitted and it is not even known which of the tools was used to select the model, or at least which model of evolution they selected and by what criterion (BIC or AIC).
Moskalenko
The selection of the evolutionary model
Results
Apart from the fact that the trees were built in MEGA 7, nothing else was said in the article.
Our ML-trees were built in RAxML-NG and in IQ-TREE ML_trees.ipynb, but the optimal solution seemed to be to use IQ-TREE, since it worked faster.
Moskalenko
Building ML-trees
Results
Moskalenko
Dataset 1:
In R (ggtree):
In Python (Phylo):
Building ML-trees
Results
Moskalenko
Building ML-trees
Dataset 2:
In R (ggtree):
In Python (Phylo):
Results
Moskalenko
Building ML-trees
Dataset with all sequences without gaps in the data:
In R (ggtree):
In Python (Phylo):
Results
Moskalenko
Building BA-trees
Dataset 1:
Phylogenies were also reconstructed by Bayesian analysis (BA) in BEAST2:
Results
Moskalenko
Building BA-trees
But protein coding sequences (H3) entered as amino acid sequences:
Results
Moskalenko
Conclusions
It is very strange that in the original article, the same authors obtained different results on phylogenetic analysis without adding new data, however, none of their articles indicate either evolutionary models for building trees, or parameters set in some tools.
The main conclusions we have received:
Results
Bystřický
Preparing data for alignment
Multiple alignment
Trimming
Data concatenation
Results
Bystřický
We also refuse to use the PartitionFinder tool, since it is quite difficult to install and in addition, it was not even indicated which model was chosen and by what criteria. Therefore, we chose an evolutionary model using two other tools (RAxML-NG and IQ-TREE) by BIC (Ev_model.ipynb):
Apart from the last file, the tools predicted similar models.
The selection of the evolutionary model
Results
Bystřický
Next, trees were built using RAxML-NG and in IQ-TREE ML_trees_b.ipynb, and using the python module from Bio import Phylo, they were visualized.
16S_alignment.fas:
IQ-TREE
RAxML-NG
Their result
Building ML-trees
Results
Bystřický
28S_alignment.fas:
IQ-TREE
RAxML-NG
Their result
Building ML-trees
Results
Bystřický
EF1a_alignment_phased.fas:
IQ-TREE
RAxML-NG
Their result
Building ML-trees
Bystřický
Results
For 28S, which is homozygous and lineages exhibit reciprocal monophyly (except CWE D), we applied both a tree-based method.
Bystřický
Results
The EF1a marker is heterozygous and lineages are not reciprocally monophyletic. Therefore, tree- or distance-based species delimitation methods are not applicable. Consequently, we used the haploweb method since it is specifically designed to delimit species based on such markers . The haploweb distinguishes putative species clusters based on mutual allelic exclusivity, following Doyle’s view of species as fields for recombination. It was run on the HaplowebMaker web-server (https://eeg-ebe.github.io/HaplowebMaker/):
Species delimitation based on the haploweb method applied to the phased EF1a alleles. Each circle represents a unique haplotype. Haplotypes co-occurring within the same individual are connected by a colored curved line. Each tick mark represents one substitution:
Bystřický
Results
Conclusions
Results
Bukin
There was no information about trimming in the original paper
It was decided to make one with -automated1 setting
Results
Bukin
In the original article the best-fitting GTR model with gamma correction
(GTR + G) was used for phylogenetic analysis.
During the replication was got another model
Results
Bukin
On the our picture we can see the original clades of Central, Northern and southwestern populations
Little difference may be the result of poor given data
Results
Wattier
There was no information about trimming in the original paper
But there was problem with turning on pipeline due to the sample size. So we had to trim four times with -automated1 setting
Results
Wattier
The best-fitting model of substitution was the transversion model (TVM) with gamma-distributed rate heterogeneity (G) and a given proportion of invariable sites (I)
Received model matched with the original
Results
Wattier
It isn’t possible to compare trees, due to the Jawa heap space error, which hasn’t been solved yet
Summary
Two of the four articles should be considered complex and poorly reproducible for the following reasons:
The first item on the list of shortcomings and the last two items also apply to the other two articles.
More details can be found in:
Summary
Our pipeline, compiled by the authors of this project
More details can be found in:
Further plans
Reproducibility is the main goal that Conda and other environment management tools strive to achieve in order to ensure high—quality code execution not only on a personal PC, but also on the machines of team colleagues. That's why it's so important to be able to recreate the same environment on another computer. To do this, we can create a unique virtual environment and design the pipeline as a Bash script.