CS 251/2 Labs (Spring 2026)

Description Grades Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 9 Week 10 Week 11 Week 12 Week 13 Week 14

Description

Lab objectives

  • Gain practical experience implementing data analysis and visualization techniques discussed in lecture before starting the project.
  • Create an intuition for what the results of different algorithms and visualization techniques will produce.
  • Find and apply python library documentation.
  • Use jupyter notebook and matplotlib to visualize datasets and algorithms.
  • Use numpy, scipy, pandas, and scikit-learn to modify and analyze datasets.

Grading Policies

How labs are graded

Labs contribute 5% toward your course grade in CS251 and CS252. Each lab is graded separately from projects, out of 2 points:

Attendance point: Your attendance in lab is required and will contribute 1 point. You are allowed to be absent for 2 labs (excused or unexcused) with no penalty.

Lab completion point: Your submitted lab work will contribute up to 1 point. Here is the grading rubric:

  • Strong: Lab is complete. (1 pt)
  • Developing: At least half of the lab is completed. (0.6 pt)
  • Insufficient: The lab was not submitted or less than half completed. (0 pt)

You may lose points if you do not turn in labs and projects in the expected format. There is an entry for following the submission format in the project grading rubrics.

Submission format

Please see Lab and project submission format.

Lab due dates

Your lab should be turned in by Friday night at 11:59pm.

Labs received within 1 week of the due date will lower that week's lab assignment's grade by 0.4 pts.

Labs will not be accepted after 1 week of the due date.

Week 1

Python and coding categorical data

Due: Friday, February 6th

Lab 01A

Next Steps

Week 2

Introduction to Jupyter, NumPy, and Matplotlib

Due: Friday, February 13th

Typically lab instructions will be given to you through a Jupyter notebook that should be completed and turned in. Let's start that process this week.

Note: This requires that you have Jupyter installed on your computer. If you followed the CS251 software installation instructions, you should be ready to go. Otherwise, follow the instructions to install Jupyter.

  1. Download Lab 01B zipfile and move it to where you store CS251 labs on your computer.
  2. Open Terminal and cd your way to the Lab01b directory.
  3. Type jupyter notebook in the Terminal then hit enter to run the command. If that doesn't work try python3 -m notebook
  4. Your default web browser should launch and open a page that shows the files listed within your Lab01b directory. code
  5. Open the file named Lab01b.ipynb and start the lab.
    If you have problems, please ask. Now is the time to debug the process!

Please upload your completed work in the Lab01b folder on Google Classroom as a ZIP file like last week and follow the lab and project submission format.

Download the matplotlib tutorial: matplotlib_tutorial_starter.ipynb.

Week 3

CS251: Logical Indexing and Categorical Data Analysis

Due: Friday, February 20th

Lab 02 zipfile

Please upload your completed notebook on Google Classroom in a ZIP file like last week and follow the lab and project submission format.

CS252: Linear Regression

Due: Friday, February 20th

Lab 02a zipfile

Please upload your completed notebook on Google Classroom in a ZIP file like last week and follow the lab and project submission format.

Week 4

CS251: Linear Regression

Due: Friday, February 27th

Lab 03a zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

CS252: Polynomial Regression

Due: Friday, February 27th

Lab 02b zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

Week 5

CS251: Polynomial Regression

Due: Friday, March 6th

Lab 03b zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

CS252: Matrix Condition Number

Due: Friday, March 6th

Lab 02c zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

Week 6

CS251: K-means clustering

Due: Friday, March 13th

Lab 04 zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

CS252: K-means clustering and Logical Indexing

Due: Friday, March 13th

Lab 03 zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

Week 7

CS251: Pandas and Data Transformations

Due: Friday, March 20th

Lab 05a zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

CS252: Pandas and Data Transformations

Due: Friday, March 20th

Lab 04a zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

Week 8

No lab

Week 9

CS251: Principal Component Analysis

Due: Friday, April 3rd

Lab05b.zip

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

CS252: Principal Component Analysis

Due: Friday, April 3rd

Lab04b.zip

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

Week 10

CS251: Principal Component Analysis and Images

Due: Friday, April 10th

Lab 05c zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

CS252: Principal Component Analysis and Images

Due: Friday, April 10th

Lab 04c zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

Week 11

CS251: K-Nearest Neighbor Classification

Due: Friday, April 17th

Lab 06a zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

CS252: Singular Value Decomposition

Due: Friday, April 17th

Lab 05 zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

Week 12

CS251: Naive Bayes and KNN

Due: Friday, April 24th

Lab 06b zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

CS252: K-Nearest Neighbor Classification

Due: Friday, April 24th

Lab 06a zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

Week 13

CS251: Neural Networks

Due: SATURDAY May 2nd

Lab 07 zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

CS252: Support Vector Machines

Due: SATURDAY May 2nd

Lab 06b zipfile

Please upload your lab .ipynb file in a ZIP file (following the usual conventions).

Week 14

No new lab