Homepage
Open in app
Sign in
Get started
Bioinformatics with Rust
Simple Rust code for bioinformatics you can copy, paste, and modify
Follow
Introducing Bioinformatics with Rust
Introducing Bioinformatics with Rust
This is a blog about bioinformatics, Rust, and doing science.
Drashti Shah
Dec 4, 2023
Devil’s Biological Dictionary #2: Antibody
Devil’s Biological Dictionary #2: Antibody
Antibody, noun: A body’s personal security guard. They patrol the bloodstream. Their job: to spot and stop harmful intruders like viruses…
Drashti Shah
Feb 6
Devil’s Biological Dictionary #1: Vector
Devil’s Biological Dictionary #1: Vector
Vector, noun: A reformed rogue of the microscopic world, once specialising in chaos and disease, now intriguingly repurposed as a genetic…
Drashti Shah
Jan 27
What are discrete cell states?
What are discrete cell states?
Discrete cell states represent the distinct functional stages that cells can assume, reflecting their diverse roles in biological…
Drashti Shah
Jan 19
What is homology modelling?
What is homology modelling?
Homology modelling, also known as comparative modelling, is a computational technique used in bioinformatics to predict the…
Drashti Shah
Jan 9
What is pathway analysis?
What is pathway analysis?
Pathway analysis is a method used in biology to understand how different molecules in a cell interact and work together to carry out…
Drashti Shah
Jan 7
How to calculate biodiversity indices
How to calculate biodiversity indices
Rust functions that return Simpson’s Diversity Index and Shannon-Weiner Index based on count of species and count of individuals within a…
Drashti Shah
Dec 29, 2023
How to build a virtual embryo
How to build a virtual embryo
This work is a simplified version of an article published in Nature called how to build a virtual embryo.
Drashti Shah
Dec 28, 2023
How to model Mendelian inheritance
How to model Mendelian inheritance
A Rust struct for solving Punnett Square problems
Drashti Shah
Dec 23, 2023
Understanding a genome browser: what are tracks?
Understanding a genome browser: what are tracks?
I am just starting to learn the jargon biologists use. So looking at a genome browser is intimidating. But UCSC (University of California…
Drashti Shah
Dec 19, 2023
How to run a bash script in Rust
How to run a bash script in Rust
Bash scripting is a useful skill for computational biologists. Since writing all algorithms from scratch in Rust is not our goal, there are…
Drashti Shah
Dec 17, 2023
How to select sample IDs using regular expressions
How to select sample IDs using regular expressions
A Rust function that returns a vector of string slices that match a regex pattern
Drashti Shah
Dec 16, 2023
Take a break: read the Stardoc series!
Take a break: read the Stardoc series!
The Stardoc series by S. L. Viehl is addictive. If you like imagining yourself as a kickass doctor who gets to learn and treat alien life…
Drashti Shah
Dec 13, 2023
My favourite YouTube videos for learning Rust
My favourite YouTube videos for learning Rust
The order represents how beginner-friendly these resources are. ONE being highest, and THREE being lowest.
Drashti Shah
Dec 12, 2023
How to group methods for working with a DNA sequence
How to group methods for working with a DNA sequence
A Rust struct for processing a DNA sequence: check for valid bases, transcribe, find the reverse complement, calculate length and GC…
Drashti Shah
Dec 10, 2023
How to call Rust functions from Python code in JupyterLab
How to call Rust functions from Python code in JupyterLab
Python is an important tool in any bioinformatician’s toolkit. My goal is to help you add Rust in this toolkit rather than replace Python…
Drashti Shah
Dec 10, 2023
Make it compile: linear algebra exercises #1
Make it compile: linear algebra exercises #1
Rust has a crate called ndarray. It’s like numpy in Python. These exercises are designed to help you get familiar with ndarray, so you can…
Drashti Shah
Dec 9, 2023
Understanding the compiler: what constant variables can & cannot hold
Understanding the compiler: what constant variables can & cannot hold
Let’s say we want to generate sequences with point mutations at random locations based on a wild type sequence. We decide to store this…
Drashti Shah
Dec 8, 2023
AI prompt for writing code from scratch
AI prompt for writing code from scratch
Generated with AI
Drashti Shah
Dec 8, 2023
How to write Rust in JupyterLab
How to write Rust in JupyterLab
This is going to be a super short article. After installing Rust and Jupyter Lab, you just need to run the following commands one-by-one.
Drashti Shah
Dec 7, 2023
How to read a FASTA file
How to read a FASTA file
A Rust function that returns a HashMap containing sequence IDs or headers as keys and DNA sequences as values extracted from a FASTA file
Drashti Shah
Dec 7, 2023
How to count point mutations
How to count point mutations
A Rust function that returns count of point mutations (hamming distance)
Drashti Shah
Dec 6, 2023
AI prompt for making sense of others’ code
AI prompt for making sense of others’ code
This is an example of how to use AI to understand someone else's code for calculating GC content.
Drashti Shah
Dec 5, 2023
How to count DNA nucleotides
How to count DNA nucleotides
A Rust function that returns counts for A, C, G, and T in a DNA sequence
Drashti Shah
Dec 4, 2023
About Bioinformatics with Rust
Latest Stories
Archive
About Medium
Terms
Privacy
Teams