- Number: PPHA 30530, SOCI 40214
- Lecture: Tuesdays, Thursdays at 1:30-2:50pm
- Room: PBPL-224
- Text: No required book for the course, however there will be optional and required online readings.
- Questions/non-git assignment submission: firstname.lastname@example.org (list for instructors/TA)
- Class Discussion: Piazza
, teaching assistant
Assignments and Grading
Grading for the course will come from assignments and a final group project:
A virtual machine (VM) will be provided that has all the software required for the course installed.
- Download: Link is available on Chalk (under course announcements).
- Setting up the VM: Download VirtualBox and install it on your local machine. You can load this machine in VirtualBox by going to the File menu, then click Import Appliance.
- Contents: The class VM is a Debian Linux machine with everything you will need to participate in the course, including nano, git, QGIS, NLTK, pgadmin, IPython, scikit-learn, numpy, scipy, pandas, matplotlib, seaborn, statsmodels, sqlalchemy, flask, beautifulsoup and urllib3. Students are free to use their own machines if they have the software setup, else they should use the virtual machine.
Note the schedule will be updated throughout the quarter. Assignments will be posted on the specified dates and readings will be finalized one week before they are due. Please check this site regularly and we will notify you of any major changes.
January 5 Course introduction and demos
January 7 Command line, intro to Python (variables, types, data structures), basic plotting with matplotlib
January 12 Python control flow
January 14 Data and functions
January 19 Effective software development skills, version control, git
January 21 DataFrame Operations
January 26 Working with different files (JSON, xls, etc.), writing modules/packages, debugging
January 28 Census and survey data; introduction to relational databases
February 2 Ethics, data security and privacy
February 4 SQL continued
February 9 Web scraping
February 11 More SQL; Web APIs
February 16 Servers and Deployment
February 18 Mapping, GIS
- Tufte, "The Visual Display of Quantitative Information"
- Krivo and Peterson, “Extremely Disadvantaged Neighborhoods and Urban Crime”, Social Forces (1996)
February 23 Web application programming with Flask
February 25 Text analysis, natural language processing
March 1 Flask web development continued
March 3 Machine learning 1
March 8 Final Project Presentations 1
Finals week: Final project presentations 2