The Departments of Mathematics and Computer Science have collaboratively mapped out a data science pathway for an IDM (interdepartmental major) between the two departments. This pathway makes it easier for you to identify courses relevant to a career in data science, and to plan and optimize your program of study accordingly.

Note that this IDM is intended for students interested in data science and its mathematical foundations, but not necessarily all the lower-level computational aspects. Depending on your interests, the other options include:

- The
**Data Science Concentration**within the COMPSCI major, which requires fewer courses on the mathematical and statistical foundations, but focuses more on the computational aspect and practical issues that arise in applying data science. - The IDM in
**STA+CS on Data Science**, which covers more topics on statistical data analysis.

### Prerequisites:

- CompSci 101L or 102 or 116 or equivalent
- Math 111L and 112L or equivalent
- Math 212 or 222 (but not 202)

These courses/credits will not count towards the 14 required courses below.

### From Computer Science:

- CompSci 201 (Data Structures and Algorithms)
- One of CompSci 316 (Introduction to Databases) or 516 (Data-Intensive Systems)
- CompSci 330 (Design and Analysis of Algorithms)
- One of CompSci 371 (Elements of Machine Learning), 370* (Intro. Artificial Intelligence), 570 (Artificial Intelligence), or 671* (Machine Learning)
- *Note: 370 was renumbered from 270 in Fall 2019, and 671 from 571 in Spring 2019.

- 3 electives from the following (or others approved by the Director of Undergraduate Studies):
- CompSci 370, 371, 570, or 671 (if not taken for the requirement above)
- CompSci 216 (Everything Data)
- CompSci 230 (Discrete Math for CS)
- CompSci 250 (Computer Architecture)
- CompSci 474 (Data Science Competition)
- CompSci 527 (Computer Vision)
- CompSci 290/590 (Topics) on the following subjects (some may not be offered regularly):
- Algorithmic Aspects of Machine Learning
- Algorithms for Big Data
- Algorithmic Foundations of Data Science
- Algorithms in the Real World
- Privacy
- Reinforcement Learning

### From Mathematics:

- Math 221 (Linear Algebra)
- Math 340/Stat 231 (Advanced Intro to Probability) or Math/Stat 230 (Probability)
- Math 342/Stat 250 (Statistics) OR Math 343/Stat 432
- Plus one of the following:
- Math 401 or 501 (Abstract Algebra)
- Math 431 or 531 (Basic Analysis)

- Plus two of the following:
- Math 403 (Advanced Linear Algebra)
- Math 465/CompSci 445 (High-dim Data Analysis)
- Math 412/CompSci 434 (Topology with Applications)

- Plus one of the following electives, or with DUS approval:
- Math 401, 501, 431, or 531 (if not taken for the requirement above)
- Math 371 (Combinatorics)
- Math 375 (Linear Programming and Game Theory)
- Math 387 (Logic)
- Math 421 (Differential Geometry)
- Math 304 or 404 (Cryptography)
- Math 502 (Abstract Algebra II)
- Math 561 (Numerical Linear Algebra)
- Math 532 (Basic Analysis II)