Instructor: Adam Bradley
Telephone: 401-419-7713
Email: [email protected]
Class Days/Time: Mondays, 4-8pm
Classroom: Tyler Hall, 055
Scientific programming. Algorithmic thinking. Scripting, language comparisons, code design, programming resources and communities. Not for graduate or undergraduate credit in Computer Science. Not for graduate or undergraduate computer science majors.
In this course we will cover basic Python programming in the Jupyter environment with the goal of enabling students to read datasets and perform basic statistical analysis and visualization. The class will also touch on use of the Git version-control system and the use of the computer's command line interface (PowerShell on Windows, bash
on other systems).
Upon successful completion of this course, each student will be able to perform replicable data analyses using Python in Jupyter. Specifically, they will be capable of:
- Writing simple programs in Python.
- Loading, cleaning, summarizing, visualizing, and explaining data.
- Generate reproducable data analyses.
- Know how to apply the tools learned in class to research.
*Note: Time will be provided in the first class session to install the required software.
Git: Download from https://git-scm.com/download.
Anaconda (Python 3 version): Download from https://www.anaconda.com/distribution/.
There are no required texts for this course. I recommend the following as helpful references:
Python for Data Analysis, 2nd Edition by Wes McKinney. An ebook version is available online through the URI Library.
Online course materials are in my Github account at https://github.com/atbradley/uri_csc593.
Each student will need a Github account. This is free, and time will be provided during the first class to sign up.
Each student should bring a laptop to every class meeting. You will need administrative access. Be sure that your laptop is fully charged prior to each meeting as there may not be easy access to power for every student.
If you do not have access to a laptop, you may use the computers in the lab; however, I am unsure about availability outside of class hours.
We will have weekly assignments in the form of Jupyter notebooks submitted via Git. We will spend the first class learning the details of how to access and submit your homework assignments.
Assignments are due at noon on the Saturday following each class.
The final project will involve an analysis of the dataset you choose during the first week of classes. More details will be provided by the end of October.
- URI's databases at https://uri.libguides.com/az.php (try in particular https://uri.libguides.com/az.php?q=dataset and https://uri.libguides.com/az.php?t=4871).
- Quandl at https://www.quandl.com/. There is a Python module for using data from here--we'll discuss that about week 6.
- The CDC's National Center for Health Statistics at https://www.cdc.gov/nchs/index.htm.
- The US Census Bureau at https://data.census.gov/cedsci/.
- Federal Reserve Economics Data (FRED) at https://fred.stlouisfed.org/
| Assignments | 40% | | Final Project | 60% |
A 94-100
A- 90-93
B+ 87-89
B 83-86
B- 80-82
C+ 77-79
C 73-76
C- 70-72
D+ 67-69
D 60-66
F <60
Week | Date | Topics |
---|---|---|
1 | 9/9/19 | Introduction. Installing the necessary software. Basic introduction to git , the command line (bash or PowerShell) and Jupyter. |
2 | 9/16/19 | First steps with Python: Variables, Conditionals and Loops. |
3 | 9/23/19 | No class. |
4 | 9/30/19 | Python functions and objects |
5 | 10/7/19 | File input and output |
6 | 10/15/19 (Tuesday) | Python modules: Installing and using. Intro to Pandas |
7 | 10/21/19 | Loading and cleaning data |
8 | 10/28/19 | Summarizing data |
9 | 11/4/19 | Visualizing data |
11/11/19 | Veterans Day: No Class. | |
10 | 11/18/19 | TBA |
11 | 11/25/19 | TBA |
12 | 12/2/19 | TBA |
13 | 12/9/19 | Last day of class. TBA |
12/20/19 | Final Project Due. |