ECE 20875 - Python for Data Science

Lecture Hours: 3 Credits: 3

Counts as:
CMPE Core
EE Core

Normally Offered: Each Fall, Spring

Requisites:
CS 15900 (minimum grade of C-)

Requisites by Topic:
Introductory programming

Catalog Description:
This course will introduce Python programming to students through data science problems. Students will learn Python concepts as well as introductory data science topics, and will use their knowledge of Python (and prior programming experience) to implement data analyses.

Supplementary Information:
For EE students, this course is an EE Elective for catalog terms prior to Fall 2019, and is a core course for Fall 2019 and later. For CMPE students, this course is an alternative to ECE 36400 for catalog terms prior to Fall 2019, and is a EE core course for 2019 and later.

Required Text(s):
  1. Python Essential Reference, 4th Edition, David M. Beazley, MacMillian, 2009, ISBN No. 978-0672329784.
Recommended Text(s):
  1. There will also be class notes distributed to cover the data science material for the course..

Learning Outcomes:

A student who successfully fulfills the course requirements will have demonstrated:
  1. an understanding of regular expressions. [1,2]
  2. an ability to use Python to write data analyses. [1,2,6]
  3. an ability to explain when data analyses are appropriate. [1,2,3,6]
  4. an ability to explain the results of data analyses. [2,3,5]
  5. an ability to incorporate classes in their Python programs. [1,2,6]
  6. an ability to incorporate associative arrays in their programs. [1,2,6]

Lecture Outline:

Week Topic
1 Bash scripting, basic Python
2-3 Higher order functions, map/reduce, regular expressions, basic text processing
4-5 Regular expressions, N-gram analysis, probability distributions
6-7 Data structures: lists, arrays, associative arrays, sampling and estimation
8 Iterators and generators, regression
9 Objects, Clustering (k-means)
10 Classifiers (kNN, naive bayes)
11-12 Perceptrons, neural nets, PyTorch
13-15 Project

Engineering Design Content:

Establishment of Objectives and Criteria
Synthesis
Analysis
Construction
Testing
Evaluation

Engineering Design Consideration(s):

Economic