Summary and Schedule
This lesson is an introduction to programming in Python 3 for people with little or no previous programming experience. It uses plotting as its motivating example and is designed to be used in both Data Carpentry and Software Carpentry workshops. This lesson references JupyterLab but can be taught using alternative Python 3 interpreters as well (e.g., repl.it, Anaconda).
Prerequisites
Learners need to understand what files and directories are, what a working directory is, and how to start a Python interpreter.
Learners must install Python 3 before the class starts.
Learners must get the gapminder data before class starts: please download and unzip the file python-novice-gapminder-data.zip.
Please see the setup instructions for more details.
Setup Instructions | Download files required for the lesson | |
Duration: 00h 00m | 1. Running and Quitting | How can I run Python programs? |
Duration: 00h 15m | 2. Variables and Assignment | How can I store data in programs? |
Duration: 00h 35m | 3. Data Types and Type Conversion |
What kinds of data do programs store? How can I convert one type to another? |
Duration: 00h 55m | 4. Built-in Functions and Help |
How can I use built-in functions? How can I find out what they do? What kind of errors can occur in programs? |
Duration: 01h 20m | 5. Libraries |
How can I use software that other people have written? How can I find out what that software does? |
Duration: 01h 40m | 6. Lists | How can I store multiple values? |
Duration: 02h 00m | 7. For Loops | How can I make a program do many things? |
Duration: 02h 25m | 8. Conditionals | How can programs do different things for different data? |
Duration: 02h 50m | 9. Reading Tabular Data into DataFrames | How can I read tabular data? |
Duration: 03h 10m | 10. Pandas DataFrames | How can I do statistical analysis of tabular data? |
Duration: 03h 40m | 11. Plotting |
How can I plot my data? How can I save my plot for publishing? |
Duration: 04h 10m | 12. Looping Over Data Sets | How can I process many data sets with a single command? |
Duration: 04h 25m | 13. Writing Functions | How can I create my own functions? |
Duration: 04h 50m | 14. Variable Scope |
How do function calls actually work? How can I determine where errors occurred? |
Duration: 05h 10m | 15. Programming Style |
How can I make my programs more readable? How do most programmers format their code? How can programs check their own operation? |
Duration: 05h 40m | 16. Wrap-Up |
What have we learned? What else is out there and where do I find it? |
Duration: 06h 00m | 17. Synaptoperitis Research Challenge | How do i analyze data using python? |
Duration: 06h 45m | Finish |
The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.
Getting the Data
The data we will be using is taken from the gapminder dataset. To obtain it, download and unzip the file python-novice-gapminder-data.zip. In order to follow the presented material, you should launch the JupyterLab server in the root directory (see Starting JupyterLab).
Installing Python Using Anaconda
Please refer to the Python section of the workshop website for installation instructions.