Course Overview

How can we understand how the brain works? This course provides an introduction to in vivo neuroimaging in humans using functional magnetic resonance imaging (fMRI). The goal of the class is to introduce: (1) how the scanner generates data, (2) how psychological states can be probed in the scanner, and (3) how this data can be processed and analyzed. Students will be expected to analyze brain imaging data using the opensource Python programming language. We will be using several packages such as numpy, matplotlib, nibabel, nilearn, fmriprep, and nltools. This course will be useful for students working in neuroimaging labs, completing a neuroimaging thesis, or interested in pursuing graduate training in fields related to cognitive neuroscience.


  1. Learn the basics of fMRI signals

  2. Introduce standard data preprocessing techniques

  3. Introduce the general linear model

  4. Introduce advanced analysis techniques


This course is designed primarily around learning the basics of fMRI data analysis using the Python programming language. We will cover a lot of ground from introducing the Python programming language, to signal processing, to working with opensource packages from the Python Scientific Computing community. The format will be slightly different than the typical in-person version of the course.

  • All course materials will be made available online in the format of a jupyter book, Lectures will primarily be delivered via publicly available pre-recorded lectures available on youtube.

  • Each course module will have a jupyter book tutorial and an accompanying assignment that will require completing some type of programming task or analysis. Students will work within small groups throughout the term on their assignments.

  • Scheduled classes will primarily take the form of a Q&A where solutions to the assignments will be discussed and specific topics can be discussed in more detail.

  • There will be a single exam, in which students will have to replicate an analysis of a published study using real data.

  • For the final project, students will analyze an existing publicly available dataset to answer a new research question. Unfortunately, we will not be able to collect a new fMRI dataset as the Dartmouth Brain Imaging Center is currently closed for this term.


Please post any questions that arise from the material in this course on our Discourse Page

License for this book

All content is licensed under the Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.


Dartbrains was created by Luke Chang and supported by an NSF CAREER Award 1848370 and the Dartmouth Center for the Advancement of Learning. Our jupyterhub server was built and maintained by the Research Computing staff at Dartmouth. Special thanks to Arnold Song, William Hamblen, Christian Darabos, and John Hudson.