# Neuroscience Tutorials

# Learning resources for neuroscience students

Written and curated by Dr. Mike Manookin (manookin at uw dot edu).

The goal of this page is to provide beginning neuroscience students with resources that will help them prepare for the first-year graduate course work in Neuroscience at the University of Washington.

## Code-Based Tutorials

I have created a public repository containing Matlab and Python tutorials designed to teach statistics and neuroscience concepts in the context of code that you can use in your own research. These tutorials can be accessed in a browser HERE or it can be cloned on your computer with the following terminal command:

`git clone https://github.com/mikemanookin/NeuroscienceTeachingCode.git`

I will continue to upload tutorials to this repository, so running ‘`git pull`‘ periodically will keep you up to date.

## Programming Resources

Proficiency in programming languages such as MATLAB, Python, or R has become an essential tool for neuroscience research. Developing programming skills requires years of consistent work. We have compiled some resources to help you learn to program. The MATLAB and Python cheatsheets provide the most basic programming examples for those starting out. We also provide more advanced resources. The Allen Brain Institute has kindly provided resources for learning Python.

- Basic MATLAB Programming Cheatsheet
- Basic Python Programming Cheatsheet
- Matlab for the Behavioral Sciences: Ione Fine and Geoff Boynton have kindly made the PDF version of their book available to us free of charge. This book provides an excellent overview of basic programming techniques as well as more advanced methods in the context of data analysis.
- Introduction to Matlab Programming from Vanderbilt U.
- Advanced MATLAB Resources from MathWorks
- Allen Institute Python Resources
- R Programming Tutorial
- Patrick Mineault put together a nice overview of better coding practices that could save you time and keep your projects organized.
- This GitHub repository teaches basic math concepts using Python.

## Calculus

- Integration
- Differentiation

## Linear Algebra

Linear algebra is a very important tool in neuroscience and machine learning. Below, are some resources for learning these concepts. I recommend starting with the videos from Grant Sanderson illustrating the basic concepts of linear algebra. In preparation for the neuroscience course work, gaining a solid conceptual understanding of matrix multiplication will help in understanding the more advanced topics covered in the course work such as eigendecomposition and singular value decomposition.

- Resources

## Differential Equations

Derivatives are important for modeling several neural processes and phenomena such as neural network behaviors. Taking some time to familiarize yourself with these concepts will prepare you for coursework and research that applies mathematical concepts to biological systems. Eric Shea-Brown runs a very nice course on computational neuroscience (highly recommended) that uses differential equations in this way.

- Resources

## Statistics

- I have posted some videos introducing basic ideas in statistics. They are available on my YouTube channel here:
- Khan Academy course on statistics and probability
- Methods for determining the differences between two distributions
- Signal Detection Theory
- Information Theory

## General Resources

Adrienne Fairhall and Raj Rao here at UW have put together a very nice online introduction to computational neuroscience, which can be accessed HERE. This course is a very nice overview of computational neuroscience concepts and does not take much time to complete.

Steve Brunton’s YouTube channel contains many excellent videos that cover many topics that are useful to neuroscience research including linear algebra and Fourier analysis.

Here are two nice resources for learning computational neuroscience concepts:

- Ella Batty’s Computational Neuroscience Tutorial
- Mike Landy and Eero Simoncelli’s Computational Neuroscience Course Materials