Most researchers are unable to collect new data due to the pandemic. Instead, researchers must rely on digital mountains of open data sources and/or already collected data to make progress on their projects. Trainees and early career researchers need powerful tools to aggregate, explore, and analyze their data. Coupled with the cancellation of summer workshops to train researchers, there is an increased need to support those individuals as they learn how to use powerful tools. The brainhack committee seeks to support researcher's learning this summer through an 8 week series of python tutorials focused on providing the fundamental skills for data analysis, and preparing a subset of the participants for a virtual neuroscience summer course, neuromatch academy. The goals of this 8 week series are two-fold: 1, we hope to provide an adequately paced, interactive introduction to python that inspires confidence in participants to take the lessons they learn and apply them to their own data and 2, we hope to create a community of early career researchers/trainees/research support staff to provide open communication between the needs of researchers and services provided by research support staff.
The event will take place May 18th-July 10th, 2020 through zoom. On each Monday starting May 18th, we will release an interactive tutorial (via google colab) for participants to work on. Throughout the week, as participants hit roadblocks and run into questions, we will encourage them to post on our slack group so that other participants or python "experts" can answer the questions. On each Friday (3-5pm) starting May 22nd, we will host a discussion via zoom briefly covering the main concepts on that week's tutorial, and open discussion for participants to share and get past their roadblocks. Near the end of the training, we will introduce participants to IDAS, and encourage them to sign up for the service so they can apply their new python knowledge to their own data.
- May 18th - May 22nd
- Python Fundamentals
- what are the data types in python?
- how can I create a variable?
- Python Fundamentals
- May 25th - May 29th
- Analyzing Data
- read data files into python
- perform operations on arrays of data
- Analyzing Data
- June 1st - June 5th
- Visualizing Data
- plot simple graphs from data
- group several graphs in a single figure
- Visualizing Data
- June 8th - June 12th
- Repeating Actions with Loops
- explain what a for loop does
- correctly write for loops to repeat simple calculations
- Repeating Actions with Loops
- June 15th - June 19th
- Storing Multiple Values in Lists
- explain what a list is
- create and index lists of simple values
- change the values of individual elements
- append values to an existing list
- reorder and slice list elements
- create and manipulate nested lists
- Storing Multiple Values in Lists
- June 22nd - June 26th
- Analyzing Data from Multiple Files
- use a library function to get a list of filenames that match a wildcard pattern
- write a for loop to process multiple files
- Analyzing Data from Multiple Files
- June 29th - July 3rd
- Making Choices
- write conditional statements including if, elif, and else branches
- correctly evaluate expressions containing
and
andor
- Making Choices
- July 6th - July 10th
- Creating Functions
- define a function that takes parameters
- return a value from a function
- test and debug a function
- set default values for function parameters
- explain why we should divide programs into small, single-purpose functions
- Signing up for IDAS
- explain what IDAS is
- create account on IDAS
- upload/access relevant data on IDAS
- Creating Functions
The scope and pacing of the material will be flexible depending on the average learning speed of the participants, and explicitly asking for feedback on pacing as the tutorials progress.
Advertisements will be targeted towards graduate students/early career researches located at:
- Iowa Institute for Biomedical Imaging
- Informatics program
- Neuroscience program
- Biomedical Sciences program
- Psychiatry department
- Neurology department
- Psychology department
- Biomedical Engineering department
- Computer Science deparment
- Electrical Engineering department
- Computational Psychiatry group
- Graduate Women in Science
However, any individual working in a research context is welcome to participate.
All trainees/graduate students/research staff that participate will benefit by:
- learning fundamental python skills.
- being introduced to analytic services provided by the High Performance Computing Group
- becoming a part of a community of python learners at the University of Iowa