🔖 Biology in Julia
Bioinformatics, genomics, agriculture, food science, medicine, genetic engineering, etc…1
- 🏚️ means the package may not support current versions of Julia.
- 🏗️ means the package may be a WIP.
APIs for biology and medicine databases.
- BioServices.jl :: Julia interface to APIs for various bio-related web services.
- BioMedQuery.jl :: Julia utilities to process and save results from BioMedical databases/APIs.
- PubChemCrawler.jl :: Utilities to programmatically query the PubChem database.
- PubMedMiner.jl :: Julia package for studying co-occurrences in PubMed articles.
- Gillespie.jl :: Stochastic Gillespie-type simulations using Julia.
- Pathogen.jl :: Utilities to simulate and perform inference of disease dynamics.
As well as genomics.
- Ensemble.jl :: Stochastic samplers based on the “stretch move” for ensembles of walkers.
- FastaIO.jl :: Utilities to read/write FASTA format files in Julia.
- MethylUtils.jl :: Tools for WGBS Methylation analysis.
- MIToS.jl :: Mutual Information Tools for protein Sequence analysis in Julia.
- MMTF.jl :: The Macromolecular Transmission Format (MMTF) is a new compact binary format to transmit and store biomolecular structures for fast 3D visualization and analysis.
- NormalizeQuantiles.jl :: implements quantile normalization
- PlmDCA :: Pseudo Likelihood Maximization for protein in Julia.
- SpeedDate.jl :: A utility for rapidly estimating coalescence times between sequences.
- XSim.jl :: A fast and user-friendly tool to simulate sequence data and complicated pedigree structures.
- 🏚️ BioArgParse.jl :: Extension to ‘ArgParse.jl’, enabling parsing of command line parameters to types in ‘Bio.jl’.
- 🏚️ BioFeatures.jl.
- 🏚️ BismarkSummary.jl :: Basic summary of multiple Bismark runs.
- 🏚️ Circuitscape.jl :: The Julia implementation of the Circuitscape lib in Python that uses electronic circuit theory to solve problems in landscape ecology.
- 🏚️ COSMIC.jl :: Data analysis engine for COSMIC written in Julia.
- 🏚️ Crispulator.jl :: A discrete simulation tool for designing pooled genetic screens.
- 🏚️ DynamicTimeWarp.jl :: Implement Dynamic Time Warping for sequence alignment in Julia.
- 🏚️ EMIRT.jl :: Electron Microscopy Image Reconstruction Toolbox using julia language.
- 🏚️ FusionDirect.jl :: Detect gene fusion directly from raw fastq files.
- 🏚️ GenomeAnnotations.jl :: Manage Local Genome Annotation files.
- 🏚️ GenomicTiles.jl
- 🏚️ gtf-parse-off :: Experiments with parsing gene transfer format (GTF).
- 🏚️ HyperNEAT.jl :: A generative encoding for evolving ANN based on the NeuroEvolution of Augmented Topologies (NEAT) algorithm for evolutionary computation.
- 🏚️ OBC.jl :: Optimal Bayesian classification for RNA-Seq data.
- 🏚️ OpenGene.jl :: OpenGene core library in Julia.
- 🏚️ Pagel.jl :: Detect correlated evolution on phylogenies.
- 🏚️ ProgressiveAligner.jl :: Progressive alignment scripts for protein sequences.
- 🏚️ PseudoGenomes.jl :: Read alleles without a VCF parser.
- 🏚️ PureSeq.jl :: Code for the Pure-seq project.
- 🏚️ Rosalind.jl :: A bioinformatics library for solving problems from rosalind.info.
- 🏚️ seqhax.jl :: yet another NGS command.
- 🏚️ smoothlife-jl :: an implementation of the SmoothLife algorithm in Julia.
- 🏚️ Subsequences.jl :: A package for finding longest common and longest contiguous subsequences.
- 🏚️ taxize.jl :: A taxonomic toolbelt for Julia.
- 🏚️ TimeTrees.jl :: Phylogenetic tree type for julia.
- 🏚️ VariantCall.jl.
- 🏚️ YARS.jl :: YARS communication for RNA/proteins.
- BioAlignments.jl :: Sequence alignment tools in BioJulia
- BioSequences.jl :: Biological sequences for the julia language.
- BioServices.jl :: Julia interface to APIs for various bio-related web services
- BioStructures.jl :: A Julia package to read, write and manipulate macromolecular structures (particularly proteins).
- BioSymbols.jl :: Nucleic and amino acid primitive types.
- BioTools.jl :: Interfaces to common external biological tools from julia scripts and programs (e.g. BLAST).
- GeneticVariation.jl :: types and methods for working with genetic variation.
- GenomeGraphs.jl :: A modern genomics framework for julia
- GenomicFeatures.jl :: utilities for working with interval based genomic annotations.
- IntervalTrees.jl :: A data structure for efficient manipulation of sets of intervals.
- KmerAnalysis.jl :: Kmer counting algorithms and count-data utilities for the BioJulia framework
Evolution trees from biosequences.
- Phylogenies.jl :: Phylogenetic trees and geneologies
- PhyloNetworks.jl :: A Julia package for statistical inference, data manipulation and visualization of phylogenetic networks.
- PhyloTrees.jl :: Phylogenetic tree simulation.
Genome Wide Association Study (GWAS)
- JWAS.jl :: An open-source software tool written in Julia for Bayesian multiple regression methods applied to genome-wide association studies and genomic prediction.
- MendelBase.jl :: contains the base functions of OpenMendel.
- SnpArrays.jl :: provides utilities for handling compressed storage of biallelic SNP (Single-Nucleotide Polymorphism) data.
- Wikipedia’s list of RNA-Seq bioinformatics tools, not many of which are in Julia but depending on the language, they may have an API.
- Data Analysis for Genomics : This is entirely in R-language but learners can use it to learn Julia.
- 🏚️ BioTutorials : Tutorial Notebooks of BioJulia
- COBRA.jl :: COnstraint-Based Reconstruction and Analysis, used to perform COBRA analyses such as Flux Balance Anlysis (FBA), Flux Variability Anlysis (FVA), or any of its associated variants such as
- DICOM :: Julia package for reading and writing DICOM (Digital Imaging and Communications in Medicine) files.
- openBF :: A finite-volume solver for elastic arterial blood flow networks.
- ROC.jl :: Receiver Operating Characteristic (ROC) Curve for Julia Language.
- 🏚️ pedigree.jl :: Pedigree extractors and representation as a Julia type with two integer members, sire and dam. A parent not in the pedigree is coded as 0.
- 🏚️ EvoDuplexes.jl :: A Julia package to fold all local and long-range RNA duplexes.
- CellFishing.jl :: (cell finder via hashing) is a tool to find similar cells of query cells based on their transcriptome expression profiles, a.k.a. single-cell sequencing.
- MicroscopyLabels.jl :: Embed annotations in your microscopy images.
CodeNeuro :: Bringing neuroscience and data science together.
- BrainWave.jl :: Julia functions to process electroencephalographic (EEG) recordings.
- DCEMRI.jl :: A Fast, Validated Toolkit for Dynamic Contrast Enhanced MRI Analysis. A paper on the code is in press at PeerJ.
- EEG.jl :: Process EEG files in Julia.
- NeuroAnalysis.jl :: Julia package for neural signal analysis.
- NeuronBuilder :: Builds conductance based neural networks iteratively, from ion channels and synapses.
- OpenEphysLoader.jl :: A set of tools to load data written by the Open Ephys GUI.
Also see Pumas AI, Pharmaceutical Modeling and Simulation in Julia.
- DataInterpolations.jl :: A library of data interpolation and smoothing functions.
- PumasTutorials.jl :: Tutorials for pharmaceutical modeling and simulation with Pumas.jl. http://tutorials.pumas.ai
Resources and Teaching
Some resources and teaching aids listed here are not Julia language specific but you may be able to find something common and useful that can be reused and shared with attribution if it is CC-licensed.
- A google document listing Python for biologists resources by Lenny Teytelman (@lteytelman on twitter).
- Software Carpentry teaching material.
- Train online @ EMBL-EBI provides free courses on Europe’s most widely used data resources, created by experts at EMBL-EBI and collaborating institutes.
- TrainingPhyloIntro :: Practical exercises and slides for teaching computational molecular evolution.
- capetown2014 :: Teaching material for EMBO Practical Course on Computational analysis of protein-protein interactions - From sequences to networks run in Cape Town 2014.
- course_EMBO_at_TGAC_PPI_Sep2015 :: Program and some material for EMBO Practical Course on computational analysis of protein-protein interactions: From sequences to networks, taking place at TGAC, Norwich, UK, Sep-Oct 2015.
- Ian Quigley’s (@mucociliary on twitter) notes on teaching applied bioinformatics / compbio.
- Ubiquitous Genomics :: COMSE6998/ Class 2015 by Prof. Yaniv Erlich. The source is available on github.