Note: This is a hands-on course for those not majoring in computer science but want technical skills to analyze large amounts of data. If you are interested in majoring in computer science, the first course for computer science majors is CMP 167.
Course(s): | Time: | Room: |
---|---|---|
Lecture (everyone attends): | Wednesdays, 1:50-3:30 | Gillet 225 |
Laboratory meetings (register for one): | ||
Mondays, 1:50-3:30pm | Gillet 231 | |
Wednesdays, 12-1:40pm | Gillet 231 |
Date: | Topics: | Handouts: | Reading: | Classwork & Quiz Topics: |
Lab #1
30 January/1 February |
Hands-on Introduction: Python & Blackboard | Lab 1 | Chapter 1: General Introduction and Chapter 4: Turtle Graphics | #1: Academic Integrity |
Lecture #1
1 February |
Class overview; Introduction to Python: printing and turtles, variables, assignment statements, range() function; Program Design | Syllabus, Programming Problem List, Lab 1's Turtle example, Paper plane, Range examples, |
Academic Integrity Policy, Chapter 1: General Introduction and Chapter 2: Simple Python Data |
#2: Groups: Program Design |
Lab #2
6/8 February |
Random Walks: random library & more on for-loops | Lab 2 | Chapter 3: Degugging Interlude 1, Chapter 4: Turtle Graphics, and Chapter 5: Python Modules |
#3: Turtles and Loops |
Lecture #2
8 February |
Looping through Lists & Strings; Getting Input & Converting Numbers to Strings; Built-in math operators; |
Lab 2's randrange example, looping through strings example |
Chapter 2: Simple Python Data, and Chapter 9: Strings |
#4: Groups: Sampling of Grid Program Design |
13 February | Lincoln's Birthday: Campus Closed/No Classes | |||
Lab #3
15/22 February |
Monday labs meet on Wednesday, February 15. Wednesday labs meet on Wednesday, February 22. Looping through lists & user input: colors & tic-tac-toe |
Lab 3 | Chapter 2: Simple Python Data, Chapter 9: Strings and Chapter 11: Files |
#5: Turtles and Loops |
20 February | Presidents' Day: Campus Closed/No Classes | |||
Lecture #3 22 February |
More on type conversions; Extracting data from formatted files: turtle directions and plotting points; More on using packages: CSV; |
looping through files trinket for averaging example |
Chapter 9: Strings and Chapter 11: Files |
#6: Programs 1-5 |
Lab #4
27 February/1 March |
Looping Through Lists and Strings | Lab 4 | Chapter 5: Python Modules, NYC Open Data Overview |
#7: input() & Strings |
Lecture #4 1 March |
More useful string functions; Using variables as accumulators | Chapter 9: Strings and Chapter 8: More About Iteration |
#8: Groups: Making Maps | |
Lab #5
6/8 March |
Mapping Locations from Data Files; Converting strings to numbers |
Lab 5 | Chapter 8: More About Iteration | #9: Strings & Files |
Lecture #5
8 March |
Decisions: if-statements and elses; Dictionaries |
Running Total example, Dictionary example, if statement example |
Chapter 7: Selection | #10: Programs 6-10 |
Lab #6
13/15 March |
Decisions; pandas to read CSV files NYC OpenData (socrata): Populations in NYC |
Lab 6 | Chapter 7: Selection | #11: Decisions |
Lecture #6 15 March |
Dictionaries, Multi-way decisions, Designing programs with decisions; pandas; functions |
Pandas cheat sheet | Chapter 7: Selection, Dictionaries, and Pandas Intro (10 minutes to Pandas) | #12: Groups: potholes |
Lab #7 20/22 March |
Designing programs with functions & decisions | Lab 7 | Chapter 6: Functions | #13: Programs 11-15 |
Lecture #7 22 March |
Defining Functions; More on decisions |
function examples | Chapter 6: Functions | #14: Groups: Top-down design |
Lab #8 27/29 March |
Visualizing data with pandas and folium;
Using github |
Lab 8 | Chapter 5: Python Modules and Pandas visualization | #15: Functions |
Lecture #8 29 March |
More on pandas: reading files, series, dataframes | old exam, Problems 1-4, indefinite loop example | Chapter 5: Python Modules, Pandas Tutorials | #16: Groups: Loops |
Lab #9 3/5 April |
Booleans in Decisions and Loops | Lab 9 | Chapter 8: More About Iteration | #17: Programs 16-20 |
Lecture #9 5 April |
More on loops: interactive loops, sentinel values | function example | Chapter 8: More About Iteration | #18: Programs 21-25 |
10-18 April | Spring Recess: No Classes | |||
Lab #10
19/20 April |
Monday Labs meet on Thursday this week. Getting Started with R |
Lab 10 | An Introduction to R | #19: Programs 26-30 |
Lecture #10 19 April |
Introduction to R: Arithmetic, variables, & data types | DataCamp: Intro to R | An Introduction to R | #20: Programs 31-35 |
Lab #11 24/26 April |
Comparing Vectors & plot() | Lab 11 | An Introduction to R | #21: R basics |
Lecture #11 26 April |
Vectors & Factors | DataCamp: Vectors, DataCamp: Factors | An Introduction to R | #22: Programs 36-40 |
Lab #12 1/3 May |
Reading Data from Files | Lab 12 | An Introduction to R | #23: Vectors in R |
Lecture #12 3 May |
Data Frames & Lists | DataCamp: Data frames, DataCamp: Lists, R graphics tutorial | An Introduction to R | #24: Programs 41-45 |
Lab #13 8/10 May |
Correlation & ggplot2 | Lab 13 | An Introduction to R | #25: Programs 46-50 |
Lecture #13 10 May |
Correlation & Linear Regression, More on Plotting, Hypothesis Testing | Correlation & Linear Regression, Khan Academy on hypothesis testing | An Introduction to R | #26: Groups: Probability |
Lab #14 15/17 May |
Hypothesis Testing | Lab 14 | An Introduction to R | #27: End-of-semester survey |
Lecture #14 17 May |
Review | R or Python? | #28: Data Science Presentations | |
19 May | Reading Day | |||
Wednesday, 24 May, 1:30-3:30pm |
Final Examination |