MIToS
A Julia package to analyze protein sequences, structures, and evolutionary information
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README -
○Academic publication links
-
✓Committers with academic emails
1 of 16 committers (6.3%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.0%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
A Julia package to analyze protein sequences, structures, and evolutionary information
Basic Info
- Host: GitHub
- Owner: diegozea
- License: mit
- Language: Julia
- Default Branch: master
- Homepage: https://diegozea.github.io/MIToS.jl/stable/
- Size: 60.9 MB
Statistics
- Stars: 83
- Watchers: 1
- Forks: 16
- Open Issues: 4
- Releases: 50
Topics
Metadata Files
README.md
🐉 MIToS: Mutual Information Tools for protein Sequence analysis
A Julia Package to Analyze Protein Sequences, Structures, and Evolutionary Information
Linux, OSX & Windows: Code Coverage:
NOTE: Some breaking changes were introduced between MIToS 2.15 and MIToS 3.0, inclusive. See the NEWS.md file to migrate code from an old version of MIToS. Most breaking changes will show a deprecation warning with a hint on how to perform the migration. If you need more help migrating code towards MIToS v3, you can write an email to diegozea at gmail dot com asking for assistance.
MIToS provides a comprehensive suite of tools for the analysis of protein sequences and structures. It allows working with Multiple Sequence Alignments (MSAs) to obtain evolutionary information in the Julia language [1]. In particular, it eases the analysis of coevoling position in an MSA using Mutual Information (MI), a measure of covariation. MI-derived scores are good predictors of inter-residue contacts in a protein structure and functional sites in proteins [2,3]. To allow such analysis, MIToS also implements several useful tools for working with protein structures, such as those available in the Protein Data Bank (PDB) or predicted by AlphaFold 2.
MIToS starting point was an improvement of the algorithm published by Buslje et al. [2]. A BLOSUM62-based pseudo-count strategy, was implemented to improve performance in the range of MSAs with a low number of sequences [1]. MIToS offers all the tools for using, developing, and testing MI-based scores—in fact, any measure based on reside frequencies in an MSA—in different modules.
Modules
MIToS tools are separated into different modules for different tasks. - MSA This module defines multiple functions and types for dealing with MSAs and their annotations. It also includes facilities for sequence clustering and shuffling, among others. - PDB This module defines types and methods to work with protein structures from different sources, such as PDB or AlphaFold DB. It includes functions to superpose structures, measure the distance between residues, and much more. - Information This module defines residue contingency tables and methods on them to estimate information measures. This allow to measure evolutionary information on MSAs positions. It includes functions to estimate corrected mutual information (ZMIp, ZBLMIp) between MSA columns, as well as conservation estimations using Shannon entropy and the Kullback-Leibler divergence. - SIFTS This module allows access to SIFTS residue-level mapping of UniProt, Pfam, and other databases with PDB entries. - Pfam This module uses the previous modules to work with Pfam MSAs. It also offers useful functions for parameter optimization using Pfam alignments. - Utils It exports common utils functions and types used in different modules of this package.
Installation
To install MIToS, you need to execute the following code in Julia:
julia
using Pkg; Pkg.add("MIToS")
To update your installed version, you can execute:
julia
using Pkg; Pkg.update("MIToS")
Scripts
The MIToS_Scripts package offers a set of easy-to-use scripts to access some functionalities MIToS offers from the terminal. These scripts are designed for researchers familiar with command-line interfaces (CLI) but without experience coding in Julia. The available scripts include:
- Buslje09.jl: Calculates corrected Mutual Information (MI/MIp) based on Buslje et al., 2009.
- BLMI.jl: Computes corrected mutual information using BLOSUM62-based pseudo-counts, as described in the MIToS publication [1].
- Conservation.jl: Calculates Shannon entropy and Kullback-Leibler divergence for each MSA column.
- Distances.jl: Computes inter-residue distances in a PDB file.
- PercentIdentity.jl: Calculates the percentage identity between all sequences in an MSA and provides statistical summaries.
- MSADescription.jl: Provides statistics for a given Stockholm file, including clustering information and sequence coverage.
This list is not exhaustive; more scripts are available in the MIToS_Scripts.jl repository. Visit the repository for more details and to access these scripts.
Order versions
MIToS 3.0 requires Julia 1.9 or higher. It is recommended that you use these versions to get the best experience coding with Julia and MIToS. If you need to use MIToS in a Julia version lower than 1.0, you will need to look at the older MIToS v1 documentation.
Citation
If you use MIToS, please cite:
Diego J. Zea, Diego Anfossi, Morten Nielsen, Cristina Marino-Buslje; MIToS.jl: mutual information tools for protein sequence analysis in the Julia language, Bioinformatics, Volume 33, Issue 4, 15 February 2017, Pages 564–565, https://doi.org/10.1093/bioinformatics/btw646
References
- Zea, Diego Javier, et al. "MIToS. jl: mutual information tools for protein sequence analysis in the Julia language." Bioinformatics 33, no. 4 (2016): 564-565.
- Buslje, Cristina Marino, et al. "Correction for phylogeny, small number of observations and data redundancy improves the identification of coevolving amino acid pairs using mutual information." Bioinformatics 25.9 (2009): 1125-1131.
- Buslje, Cristina Marino, et al. "Networks of high mutual information define the structural proximity of catalytic sites: implications for catalytic residue identification." PLoS Comput Biol 6.11 (2010): e1000978.
License
This project is released under the MIT License. See the LICENSE.md file for the full license terms.
Acknowledgments
MIToS was initially developed at the Structural Bioinformatics Unit of the Fundación Instituto Leloir (FIL) in Argentina. Its development now continues at the Molecular Assemblies and Genome Integrity group of the Institute for Integrative Biology of the Cell (I2BC) in France.
We want to thank all contributors who have helped improve MIToS. We also thank the Julia community and all the MIToS users for their feedback and support.
Owner
- Name: Diego Javier Zea
- Login: diegozea
- Kind: user
- Location: Paris, France
- Company: Université Paris-Saclay
- Website: https://diegozea.github.io/
- Twitter: diegojavierzea
- Repositories: 67
- Profile: https://github.com/diegozea
Associate Professor. I am interested in protein structure, interactions and evolution.
Citation (CITATION.bib)
@article{10.1093/bioinformatics/btw646,
author = {Zea, Diego J and Anfossi, Diego and Nielsen, Morten and Marino-Buslje, Cristina},
title = "{MIToS.jl: mutual information tools for protein sequence analysis in the Julia language}",
journal = {Bioinformatics},
volume = {33},
number = {4},
pages = {564-565},
year = {2016},
month = {11},
abstract = "{MIToS is an environment for mutual information analysis and a framework for protein multiple sequence alignments (MSAs) and protein structures (PDB) management in Julia language. It integrates sequence and structural information through SIFTS, making Pfam MSAs analysis straightforward. MIToS streamlines the implementation of any measure calculated from residue contingency tables and its optimization and testing in terms of protein contact prediction. As an example, we implemented and tested a BLOSUM62-based pseudo-count strategy in mutual information analysis.The software is totally implemented in Julia and supported for Linux, OS X and Windows. It’s freely available on GitHub under MIT license: http://mitos.leloir.org.ar.Supplementary data are available at Bioinformatics online.}",
issn = {1367-4803},
doi = {10.1093/bioinformatics/btw646},
url = {https://doi.org/10.1093/bioinformatics/btw646},
eprint = {https://academic.oup.com/bioinformatics/article-pdf/33/4/564/25146747/btw646\_supp.pdf},
}
GitHub Events
Total
- Create event: 46
- Commit comment event: 2
- Issues event: 3
- Release event: 1
- Watch event: 5
- Issue comment event: 76
- Push event: 191
- Pull request event: 75
Last Year
- Create event: 46
- Commit comment event: 2
- Issues event: 3
- Release event: 1
- Watch event: 5
- Issue comment event: 76
- Push event: 191
- Pull request event: 75
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Diego Javier Zea | d****a@g****m | 874 |
| diegozea | d****a@s****m@g****e | 33 |
| Elin | e****a@g****m | 5 |
| Tim Holy | t****y@g****m | 5 |
| github-actions[bot] | 4****] | 3 |
| Cristina Marino Buslje | C****t | 3 |
| femtocleaner[bot] | f****] | 2 |
| LouiseB25 | 1****5 | 2 |
| Javier Iserte | j****e@u****r | 2 |
| Louise Bouzelha | b****e@g****m | 2 |
| Tony Kelman | t****y@k****t | 1 |
| Julia TagBot | 5****t | 1 |
| Jorge Fernández de Cossío Díaz | c****o | 1 |
| Ellis Valentiner | e****r | 1 |
| Dan Kool | k****d@g****m | 1 |
| Brnmdrt | 5****t | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 44
- Total pull requests: 97
- Average time to close issues: over 1 year
- Average time to close pull requests: 28 days
- Total issue authors: 10
- Total pull request authors: 16
- Average comments per issue: 2.64
- Average comments per pull request: 2.05
- Merged pull requests: 82
- Bot issues: 0
- Bot pull requests: 7
Past Year
- Issues: 1
- Pull requests: 57
- Average time to close issues: 3 minutes
- Average time to close pull requests: about 5 hours
- Issue authors: 1
- Pull request authors: 1
- Average comments per issue: 4.0
- Average comments per pull request: 1.91
- Merged pull requests: 55
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- diegozea (30)
- kool7d (3)
- timholy (3)
- javieriserte (2)
- Elin- (1)
- 3f6a (1)
- attobot (1)
- pgbarletta (1)
- tkelman (1)
- JuliaTagBot (1)
Pull Request Authors
- diegozea (110)
- timholy (8)
- LouiseB25 (8)
- github-actions[bot] (7)
- javieriserte (6)
- Cristinot (3)
- Elin- (2)
- tkelman (2)
- kool7d (2)
- ellisvalentiner (1)
- femtocleaner[bot] (1)
- staticfloat (1)
- Brnmdrt (1)
- cossio (1)
- rikhuijzer (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- julia 8 total
- Total dependent packages: 1
- Total dependent repositories: 1
- Total versions: 45
juliahub.com: MIToS
A Julia package to analyze protein sequences, structures, and evolutionary information
- Homepage: https://diegozea.github.io/MIToS.jl/stable/
- Documentation: https://docs.juliahub.com/General/MIToS/stable/
- License: MIT
-
Latest release: 3.1.0
published 10 months ago
Rankings
Dependencies
- ROCAnalysis *
- actions/cache v1 composite
- actions/checkout v2 composite
- codecov/codecov-action v2 composite
- julia-actions/julia-buildpkg v1 composite
- julia-actions/julia-docdeploy v1 composite
- julia-actions/julia-processcoverage v1 composite
- julia-actions/julia-runtest v1 composite
- julia-actions/setup-julia v1 composite
- JuliaRegistries/TagBot v1 composite
- julia-actions/setup-julia v1 composite
- actions/checkout v2 composite
- citation-file-format/cffconvert-github-action 2.0.0 composite
- actions/checkout v2 composite
- julia-actions/setup-julia v1 composite