Practical Data Science
University of Illinois, Research Park
Instructor: Robert J. Brunner
The Course Index page provides links to each week's lessons.
Note: This is a __draft__ version that will be revised as we progress through the course.
Week 1: Introduction to Practical Data Science
Review the course schedule and learning goals before posting a welcome message on the course Piazza. Next, learn about virtualization and the Docker engine and Docker container concept. In a breakout session, install the Docker Engine and the course Docker image built for this Practical Data Science course. Next, learn about source code version control, and how to accomplish this by using the git tool. In a breakout session, learn to work with git at the command line, and navigate the github site. Review basic Unix concepts and gain experience working at the Unix command prompt.
Week 2: Practical Command Line Data Science:
Learn about Unix, the Unix shell, and the Unix process model and filesystem. Use the Docker technology by working at the Unix command prompt within the course Docker container in interactive mode. This will focus on using Unix command line tools and techniques to work with data in the BASH shell
Week 3: Introduction to Python programming and the IPython Notebook
Learn how to use the IPython notebook by using the course Docker container in server mode. Also learn basic Python programming, python data types, and file I/O, before finishing with a quick overview of the numpy and scipy libraries.
Week 4: Exploring Data Through Visualizations:
Learn how to make data visualization by using Python, primarily from within the IPython notebook by using matplotlib and seaborn. This will include a discussion of scatter plots, linear regression and plotting, histograms, box plots, and other advanced visualization concepts.
Week 5: Using Databases:
Learn about database technology, before specifically focusing on relational database management systems. This will include learning how to create database, and SQL DDL and DML to create, insert, update and delete data. This will conclude with a discussion of accessing a database from Python.
Week 6: Data Acquisition:
Learn about acquiring data from diverse sources including webpages, online repositories, and social media. This will require a discussion of web scraping, DOM tress, and JSON.
Week 7: Statistical & Machine Learning:
Review basic statistics and probability and learn how to compute different random distributions by using numpy and scipy routines. Next, learn about machine learning and basic approaches to perform machine learning by using the scikit_learn library in Python.
Week 8: Data Intensive Computing:
Learn about basic concepts in high performance computing and how to perform them in Python. Next, learn about cloud computing, including how Docker technology integrates into commercial clouds. Finally, a discussion of the standard Hadoop platform and its capabilities.
The Practical Data Science course License