Course syllabus
Course-PM
DIT376 Python for Data Science, SP1 autumn term of 2024 (7.5 hp)
Course is offered by the department of Computer Science and Engineering
Contact details
- Examiner and course responsible: Selpi (selpi at chalmers.se)
Administration
- Study counsellor: svl@cse.gu.se
- Student office: student_office.cse@gu.se
- Student portal: https://studentportal.gu.se/english/my-studies/cse
Course purpose
This course is a combination of a continuation course in programming, object oriented programming, data structures, foremost from the perspective of data science, including a short orientation about algorithms and algorithm design principles. The programming language in this course is Python, which is the most common language in the area of data science.
Course content:
- Basics of Python (data types, expressions, control structures)
- Types of algorithms, searching and sorting
- Object oriented programming
- Common data structures
- Standard libraries relevant to data science
- Orientation about algorithms and algorithm design principles
Schedule
Link to TimeEdit. Note that the rooms, for lectures and labs, are not the same throughout the course. Please check every week.
Course literature (in no particular order)
[1] Allen B. Downey, Think Python: How to Think Like a Computer Scientist, 2nd edition. Green Tree Press, 2015.
[2] Jake VanderPlas. Python Data Science Handbook, O’Reilly Media, Inc., 2016.
[3] Jake VanderPlas. A Whirlwind Tour of Python, O’Reilly Media, Inc., 2016.
[4] Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, Introduction to Algorithms, MIT Press and McGraw-Hill, 3rd Edition, 2009 (or 4th edition, 2022). Available through GU library.
[5] Jon Kleinberg, Eva Tardos: Algorithm Design. Pearson/Addison-Wesley 2014, ISBN 10:1-292-02394-5 ISBN 13: 978-1-292-02394-6. Available through GU library.
Useful resources
[1] Python tutorial: https://docs.python.org/3/tutorial/
[2] Python 3 course: http://www.python-course.eu/python3_course.php
[3] w3schools, Python: https://www.w3schools.com/python/default.asp
Course design
There will be lectures and programming assignments (individual assignments and assignments to be done in groups).
Changes made since the last occasion
- Renew some assignments and lecture materials
Learning objectives and syllabus
Learning objectives:
Knowledge and understanding
- explain the basics about classes and objects;
- explain some basic abstract data types and data structures, including lists, queues,
trees, and graphs; - explain some of the algorithms used to manipulate and query these data structures
in an efficient way, for example for sorting and searching, and being able to use the
respective standard libraries in Python.
Competence and skills
- make efficient use of predefined data structures in Python;
- construct simple programs using classes and objects;
- use a standard library of data structures and algorithms in Python for solving tasks
within the area of data science.
Judgement and approach
- compare and value different aspects of program structures;
- analyse the efficiency of different algorithms, for example searching and sorting
algorithms; - make informed choices between different data structures and algorithms for
different applications, in particular those relevant for data science.
Link to the syllabus: https://kursplaner.gu.se/pdf/kurs/en/DIT376
Examination form
Grading scale: Pass (G) and Fail (U).
For a student to get a Pass (G) for the entire course, the student has to pass each of the assignments.
Note: If a student didn't pass an assignment, the student needs to re-submit that assignment as soon as possible, within SP1 period. In general, the deadline for a re-submission of an assignment is one week after the grade of that assignment has been released.
Course evaluation
At the end of the course, we encourage you to take part of the course evaluation. Your feedback is important. Please do your part by filling out the evaluations for all your courses in a constructive, helpful spirit!
You find the survey in the menu bar to the left “Course evaluations” and it is open for one week, the last week of lectures (the week before the exam period starts). It’s also here you will find the results after the deadline.
Read more about course evaluations at the Student portal.
Course summary:
| Date | Details | Due |
|---|---|---|