Julia is a great programming language that is typically associated with its strong statistical analysis and machine-learning capabilities. However, many people might know that Julia actually has a fairly mature and established group of packages for other applied sciences. Some notable examples include Yao.jl for quantum simulations, JuliaAstro.jl for astronomy (I really want to check this one out, as well) quantitative economics with QuantEcon.jl, and even quantum physics with QuantumBFS.jl and QuantumOptics.jl. With this rich ecosystem for scientific computing with Julia, it’s easy to see why many scientists are Julians either by hobby or work.

This package ecosystem has piqued my interest, so I have decided to dive in to one of them with all of the free time I have had lately due to the virus. It is a great time to do something productive like learn a new applied science with my favorite programming language, after-all; as I see that as being rather productive. Also maybe this is the most optimal of times to learn more about biology and genome sequencing. To be clear, I do not have any domain knowledge in the field of Bioinformatics, but I am seeking to get a foothold in it that I can improve over time with practice and research. I am also interested to see how I might be able to apply machine learning and statistics to Biology with Julia, and cross two applied sciences that I am very interested in.


Adding packages

In order to use BioJulia’s packages, we of course will need to add them. For my selection, I pretty much went to BioJulia’s Github and picked some repositories that sounded interesting. What I didn’t realize in my approach is that BioJulia actually has its own package registry. Rather than adding the packages individually through the Pkg REPL and Github, I decided that the registry is certainly the way to go. From the Pkg REPL, we can add the BioJulia registry with this command:

registry add https://github.com/BioJulia/BioJuliaRegistry.git

Then I was able to add my packages exactly how I normally would. These are the packages that piqued my interest:

  • BioSequences.jl
  • GenomeGraphs.jl
  • BioSymbols.jl

However, this experience ended up being a little less like me adding packages I know nothing about, and a little more like a kid in a candy shop… I also decided to pick up XAM.jl and BigBed.jl. We will also need BioCore.jl, and I went ahead and picked up BioGenerics.jl (not sure if I needed it or not.) By the end of it, I had a pretty large group of Github pages opened up. Fortunately, I have the experimental tab-grouping enabled on my Google Chrome.

#data-science #bioinformatics #julia #data analysis

Getting Familiar With BioJulia: BioInformatics for Julia
2.45 GEEK