CS220: ace the component, not just read the notes
Your complete guide to University of Wisconsin-Madison's data science programming i course. See where the marks are, work real practice questions, and study with an AI tutor that knows CS220.
Sia generates CS220 practice questions, walks through python fundamentals and working with real datasets step by step, and quizzes you on the material the component that weights most heavily.
Find what is wrong
You load a dataset of 50,000 customer records and find that the 'age' column contains some values of -1 and some of 999. What should you do before computing the mean age?
Recognise the pattern: -1 and 999 are sentinel values, conventions for missing or unknown, not real ages.
Decide on a treatment and write it down: exclude, or impute with a stated method. Either can be defensible; leaving it undocumented is not.
Then compute the statistic on the treated column, and report what was excluded.
The trap: Deleting rows reflexively. Dropping whole records throws away every other column for those customers and can bias the sample if missingness is not random. The course names reproducibility as an outcome for exactly this reason: the decision matters less than making it explicit and repeatable. classic slip!
Overview
What CS220 is, and where it sits
COMP SCI 220 is the Python entry point to data science at UW-Madison. It assumes no previous programming experience, carries 4 credits, and emphasises analysing real datasets in a variety of forms alongside visual communication.
It is an alternative to COMP SCI 200 as the first programming course, and either can lead into COMP SCI 300. The difference is orientation rather than difficulty: COMP SCI 200 builds toward software construction in Java, while COMP SCI 220 builds toward working with data in Python.
The six published outcomes are unusually broad for an introductory course. They cover integrating concepts from mathematics, computer science and statistics; competency with the tools and processes needed for data management and reproducibility; producing meaning from data through modelling; critical thinking about data science concepts and methods; oral, written and visual communication; and manipulating quantitative information to build models and solve problems with multi-step arguments. Reproducibility and communication being named outcomes tells you the assessment is not only about whether the code runs.
Always treat your own course outline and the exam timetable as authoritative.
Difficulty & time commitment
Is CS220 hard, and how much time does it take?
CS220 is manageable if you keep a weekly rhythm and treat the back half as the main event. The pattern is consistent: it starts gently and steepens, and the heaviest assessment is the part that separates grades.
The difficulty curve and the assessment weighting point the same way: the back half is harder and worth more. Front-loading effort there is the highest-return decision in the course.
Is this course for you
Who tends to do well, and who tends to struggle
You will likely do well if
- You are curious about datasets rather than only about code.
- You document as you work, since reproducibility is an assessed outcome.
- You can explain a finding to someone who has not seen your notebook.
- You look at data before modelling it.
You may struggle if
- You want a pure programming course; a third of the outcomes are about interpretation and communication.
- You skip the cleaning stage and go straight to results.
- You produce plots without a point.
- You underestimate four credits of continuous project work.
- Write down every cleaning decision as you make it; that habit is what the reproducibility outcome rewards.
- For each plot, state in one sentence what it shows and what it does not.
- Rerun your whole analysis from a clean environment before submitting.
- Practise explaining a result aloud, since communication is examined.
Syllabus
The 7 topics, topic by topic
The exam-weight marker on each topic shows where the marks concentrate. The amber topics carry the highest exam weight.
T1 · Python fundamentals
Course descriptionVariables, control flow and functions in Python, taught from zero experience.
T2 · Working with real datasets
Course descriptionData in a variety of forms, which in practice means data that is messy before it is useful.
T3 · Tabular analysis
Course descriptionSelecting, filtering, grouping and summarising, the operations most data work is actually made of.
T4 · Data management and reproducibility
Learning outcome 2A named outcome: the tools and processes that let someone else, or future you, rerun the analysis and get the same answer.
T5 · Modelling strategies
Learning outcome 3Producing meaning from data rather than only describing it.
T6 · Visual communication
Learning outcome 5Plotting and presenting results so the argument is visible. Assessed as an outcome, not treated as decoration.
T7 · Critical thinking about methods
Learning outcome 4Judging whether a method suits the data and the question, which is what separates analysis from output.
How it's assessed
Assessment structure
A component-by-component weighting breakdown is not published for this course. Rather than estimate one, we publish only what the course itself states. Check your current course outline for the exact percentages.
No component weighting is published. The university catalogue publishes course description, credits, requisites, course designation and learning outcomes, but not assessment weights, and instructor syllabi carrying them are set per section and per term. Rather than estimate a breakdown or reuse a superseded one, none is asserted here. Check the syllabus your instructor posts for this term. Not published in the catalogue. Format is set per section by the instructor.
How to actually pass it
A weekly rhythm, two checklists, and the traps to avoid
The course rewards consistency over cramming, and practice over re-reading. Here is the loop that works, then what to have nailed before each exam.
The weekly loop
Before the mid-semester checklist
- Python fundamentals: control flow, functions, data types
- Loading and inspecting real data
- Tabular operations: filter, group, summarise
- Identifying and handling missing or sentinel values
Before the final heaviest topics
- Modelling strategies and when each applies
- Visual communication of a result
- Reproducible workflow from raw data to output
- Critical evaluation of a method's fit to a question
The mistakes that cost marks
Averaging sentinel values. Codes like -1 or 999 are conventions for missing data. Including them corrupts a statistic silently.
Undocumented cleaning. An analysis nobody can rerun is not a result. Reproducibility is a named outcome of this course.
Plots without an argument. Visual communication is assessed on whether the reader sees the point, not on how many charts were produced.
Modelling before looking. Fitting a model to data you have not inspected produces confident output from broken input.
Formula & concept sheet
The vocabulary and formulas you must own
- Tabular data
- Data organised in rows and columns, the dominant form in applied data work.
- Data cleaning
- Detecting and treating missing, malformed or sentinel values before analysis.
- Sentinel value
- A placeholder such as -1 or 999 that encodes missing or unknown rather than a real measurement.
- Reproducibility
- The property that an analysis can be rerun by someone else with the same result; a named outcome here.
- Modelling strategy
- An approach for producing meaning from data rather than only summarising it.
- Visual communication
- Presenting results so the argument is legible; assessed in this course.
- Exploratory analysis
- Inspecting a dataset's structure and quirks before committing to a method.
Common acronyms: {'term': 'QR-B', 'def': 'Quantitative Reasoning Part B designation'} · {'term': 'ADT', 'def': 'Abstract data type'} · {'term': 'L&S', 'def': 'College of Letters & Science'}.
Where it fits
Prerequisites, related courses & why it matters
Requires satisfied Quantitative Reasoning Part A, or declaration in the Professional Capstone Program in Computer Sciences. No previous programming experience is required. Not open to students with credit for COMP SCI 301.
Your CS220 study toolkit
Study the course with Sia, not just read about it
Each tool already knows CS220: your syllabus, your texts, and where the marks are. Grouped by how you study, from first contact to exam week.
FAQ
Frequently asked questions
Do I need programming experience?
No. The course states no previous programming experience is required, and it teaches Python from the start.
Should I take COMP SCI 220 or COMP SCI 200?
They are alternative first courses. COMP SCI 220 is Python and data-oriented at 4 credits; COMP SCI 200 is Java and software-oriented at 3 credits. Either can lead into COMP SCI 300.
What does reproducibility mean here?
It is a published outcome: demonstrating competency with tools and processes necessary for data management and reproducibility, so that an analysis can be rerun and checked.
Is communication assessed?
Yes. One outcome is demonstrating oral, written and visual communication skills related to data science.
How is it graded?
No weighting is published in the catalogue; assessment is set per section.
Is it still running?
Yes. The catalogue records it as last taught in Summer 2026.
Study CS220 with Sia
Work through python fundamentals, working with real datasets, tabular analysis and the rest of the course with a tutor that knows it and quizzes you on the topics the assessments weight most heavily.
Start studying with Sia