Syllabus Application
DSA 201
Advanced Programming for Data Science
Faculty
Faculty of Engineering and Natural Sciences
Semester
Spring 2025-2026
Course
DSA 201 -
Advanced Programming for Data Science
Time/Place
Time
Week Day
Place
Date
17:40-18:30
Mon
UC-G030
Feb 16-May 22, 2026
16:40-18:30
Wed
SBS-G071
Feb 16-May 22, 2026
Level of course
Undergraduate
Course Credits
SU Credit:3, ECTS:6, Basic:3, Engineering:3
Prerequisites
IF 100
Corequisites
DSA 201R
Course Type
Lecture
Instructor(s) Information
İnanç Arın
- Email: inancarin@sabanciuniv.edu
Course Information
Catalog Course Description
This course blends the introduction of basic basicdata science and analytics concepts with advanced programming topics. Students gain experience in programming as they learn to use modern programming libraries for data analysis and visualization. Additionally, object-oriented concepts, algorithmic efficiency, and basic data structures are introduced.
Course Learning Outcomes:
| 1. | Perform algorithmic problem-solving. |
|---|---|
| 2. | Perform data manipulation and preprocessing. |
| 3. | Create and interpret data visualizations. |
| 4. | Develop object-oriented programming solutions using classes and inheritance. |
| 5. | Analyze programs and design efficient algorithms using appropriate data structures. |
Course Objective
This course is designed to provide a comprehensive introduction to data science, while focusing on enhancing students' programming skills in Python. With this goal, the course aims to equip students with essential tools and techniques for data manipulation and visualization, and to introduce them to basic descriptive statistical analysis. Through a combination of theoretical concepts and practical applications, students will gain the skills needed to tackle real-world data science challenges.
Students will begin by practicing algorithmic problems to solidify their Python programming skills. They will then delve into data manipulation and preprocessing using powerful libraries such as NumPy and Pandas. The course also covers basic data visualization techniques using Matplotlib and Seaborn, as well as essential concepts in descriptive statistics. In the second part of the course, students will learn about object-oriented programming, basic data structures, and development of efficient algorithms.
Learning Objectives:
Enhance programming skills through algorithmic problem-solving.
Master data manipulation and preprocessing.
Develop proficiency in data visualization.
Understand and apply key concepts in descriptive statistics.
Gain a solid foundation in object-oriented programming with classes and inheritance.
Learn basic data structures such as linked lists, stacks, and queues.
Understand program efficiency and develop efficient searching/sorting algorithms.
-
Students will begin by practicing algorithmic problems to solidify their Python programming skills. They will then delve into data manipulation and preprocessing using powerful libraries such as NumPy and Pandas. The course also covers basic data visualization techniques using Matplotlib and Seaborn, as well as essential concepts in descriptive statistics. In the second part of the course, students will learn about object-oriented programming, basic data structures, and development of efficient algorithms.
Learning Objectives:
Enhance programming skills through algorithmic problem-solving.
Master data manipulation and preprocessing.
Develop proficiency in data visualization.
Understand and apply key concepts in descriptive statistics.
Gain a solid foundation in object-oriented programming with classes and inheritance.
Learn basic data structures such as linked lists, stacks, and queues.
Understand program efficiency and develop efficient searching/sorting algorithms.