.-,--. ,--. ,. .-,--. '|__/ . . | `-' / | `|__/ ,-, ,-. ,-, ,-. ,| | | | . /~~|-. )| \ / |/| / |/| `' `-| `--' ,' `-' `' ` '-` `-' '-` `-' /| `-'
#NICAR20 in New Orleans.Python mini boot camp at
In this two-day workshop, we'll use the Jupyter notebook to explore the Python programming language. At the end of the class, we'll give you all of the code from the exercises, along with several cheatsheets and tutorials, to take home with you, all from this code repository on Github.
- Who are you, what do you do, what do you want to learn?
- What will we learn?
- What can I do with it?
- The goal of the day is to start to learn how to think about solving problems.
We'll introduce some key concepts of programming and Python types like strings, integers, lists, slicing and loops.
As with many data analyses, it all starts with a CSV. After a white board exercise, we'll start with a file of pseudocode, and we'll walk through writing the program in Python code, running each line in the Jupyter interpreter. We'll hold your hand through each step of the process.
This section covers gathering data from the web in two common formats. In the first part, we'll scrape structured data from an HTML page using a GET request and write the data to a CSV. In the second part, we'll request data from an API to get information programmatically to create a spreadsheet. Our data comes in a new format: JSON. We'll do some more with the white board to show how it's basically a combination of data structures we already know about: Lists and dictionaries (arrays and objects).
Now we get to the heart of data analysis with an introduction to the powerful
pandas library. Building on the basic objects we've already learned, and on a little knowledge of SQL, we'll clean two related tables of data, join and filter them.
At the end of the day, we'll send you home with:
- A lightning dash through basic variables, types and functions
- The working, commented code for each project from our git repo
- A walkthrough for setting up your machine at home with Python, version control and virtualenvs
- Good libraries to explore with strong tutorials
- A lifetime support guarantee from us & PythonJournos
If you're working through this code at home and have trouble, please let us know. The best option is to file an issue report of the bug so we can help you. You can also reach out to any of us on Twitter or ping PythonJournos.