DBC Intro to Programming Courses


Following the feedback at the DMCBH Faculty Research retreat and the DMCBH Neuroinformatics Working Group Needs Assessment Survey, Dynamic Brain Circuits (DBC) has organized introductory courses for MATLAB, Python, and R. These will be led by the DBC’s Neurodata tutors. No prior experience is required. Rough outlines of topics are listed below. Start date: Oct 15, 2021 (R tutorial will start Oct 22, 2021). Please email jeffrey.ledue@ubc.ca to be added to the Slack channel.

R tutorial: We will use materials from the UBC Master of Data Science program. Material can be found on our GitHub Page. Rough schedule:

  • Week 1: Intro to R, setting up a programming environment, data types, getting help
  • Week 2: Intro to R, reading data into R, data cleaning and pre-processing
  • Week 3: Intro to R, control flow (if-else, loops, pipes, etc.)
  • Week 4: Intro to R, writing functions, best practices
  • Week 5: Working with R, visualizations using ggplot
  • Week 6: Working with R, differential expression analysis using Limma-voom (or maybe DESeq2)
  • Week 7: Working with R, dimensionality reduction
  • Week 8: Working with R, statistical analysis: sampling, bootstrapping, hypothesis testing, etc
  • Week 9: Working with R, developing interactive web apps using R Shiny
  • Week 10: Working with R, how to handle big data

MATLAB tutorial: We will use the MATLAB materials from the DMCBH NINC MATLAB course available on the DBC Github organization. Rough schedule:

  • Week 1: Install and Intro
  • Week 2: Matrices & Basic Indexing
  • Week 3: Basic & Logical Indexing
  • Week 4: Strings
  • Week 5: Figures & Plots
  • Week 6: Review & Worked Image processing example
  • Week 7: Loops 1
  • Week 8: Loops 2
  • Week 9: If Statements
  • Week 10: Functions
  • Week 11: Files
  • Week 12: Input from Keyboard and Mouse
  • Week 13: Intro to User Interfaces

Python tutorial: We will use the material from the Allen Institute for Brain Science/University of Washington Summer Workshop on the Dynamic Brain Python bootcamp. These are available on Github.

  • Week 1: Notebooks 00_introduction & 01_Basic_Python_I_Object_and_Data_Structures
  • Week 2: 02_Basic_Python_II
  • Week 3: 03_Intro_to_Scientific_Computing & 04_Intro_to_numpy
  • Week 4: 05_Custom_Modules_and_Version_Control
  • Week 5: 06_Introduction_To_Matplotlib
  • Week 6: 07_Introduction_To_Pandas