ST2195 Programming For Data Science: Course Outline
ST2195 Programming For Data Science: Course Outline
Course Outline
1
Introduction
2
Introduction
3
Aims and Objectives
4
Learning Outcomes
At the end of the course and having completed the essential reading and
activities students should be able to:
5
Assessment
6
Course Materials
The following materials, available through the UOL Virtual Learning Environment (VLE),
will be your main resources
1. ST2195 Subject Guides
2. ST2195 Practice Assignments
Readings/References:
• McKinney W. Python for Data Analysis, 2nd edition O’Reilly (2017)
• Gutagg J.V. Introduction to Computation and Programming using Python, MIT
Press, 2nd edition (2017)
• Wickham H. and Grolemund G. R for Data Science, 1st edition O’Reilly (2017)
• Wickham H. Advanced R., 1st edition Chapman & Hall (2015)
• Rammakrishnan R. and Gehrke J. Database Management Systems, 3rd edition,
McGraw Hill (2002)
7
Course Structure – Lectures and Practical Sessions
Lectures will go through the content in the ST2195 Subject Guides (19 sessions)
• Coverage of key concepts/highlights
• Illustrations through demos and trying out the code
Practical Sessions will go through the ST2195 Practice Assignments (10 sessions)
• Do the assignment in groups of 4-5 students each
• For each assignment, a few groups will be randomly selected to present their solution
8
Course Structure – Details
Block Objective
1 • Introduce yourself to Data Science and review real-world data examples
Programming Tools
• Gain experience using basic tools and technology for programming, such as notebooks, IDEs and
Data Science
Ecosystem &
• Gain familiarity with various data types and structures as well as popular data-exchange formats
Interacting with Data
• Be able to work with various data types and structures and data-exchange formats in R and
Python.
9
Course Structure – Details (cont’d)
Block Description
Core Programming Concepts
• Understand and use basic programming concepts such as control flow, variable and function
scoping in R.
4
• Understand and use basic programming concepts such as exceptions, error handling, testing
and debugging in R.
10
Course Structure – Details (cont’d)
Block Description
Graphics and Data
• Gain experience with the formation of data analytic pipelines and principles of parallel computing.
9
• Interact with Machine Learning frameworks in R.
• Interact with Machine Learning frameworks in Python.
Development
Software
11
Course Structure – Additional Activities
12
Course Structure – Summary
Additional Activities
• Revision Class (1 session)
• Individual Project Reviews (2x)
• Class Test/Assignment (2x)
13
Key Takeaways
14