Hail Tutorials

To take Hail for a test drive, go through our tutorials. These can be viewed here in the documentation, but we recommend instead that you run them yourself with Jupyter.

Hail Overview

This notebook is designed to provide a broad overview of Hail’s functionality, with emphasis on the functionality to manipulate and query a genetic dataset. We walk through a genome-wide SNP association test, and demonstrate the need to control for confounding caused by population stratification.


This notebook is a hands-on introduction to Hail’s type system.


This notebook is a hands-on introduction to manipulating and understanding the Expression interface in Hail.


This notebook walks through how missing data is handled inside Hail.


This notebook introduces the Table interface.


This notebook explores ways to aggregate data in Hail.

Filtering and Annotation

This notebook demonstrates the interfaces for filtering tables and annotating new fields.


This notebook walks through how to join tables together in Hail.

Matrix Tables

This notebook communicates some understanding of the MatrixTable data representation used in the GWAS tutorial, and some of the operations that are possible (and easy!) in this interface.