Scientific Programming: Part A - Programming
General information
Degrees: | Quantitative and Computational Biology, Data Science |
Period: | September - October |
Objectives
Computer processing is a key component of modern data analysis pipelines, and plays an increasingly important role in many fields of science. The goal of the first part is to introduce the Python programming language, one of the most widely used scientific computing languages, and to a collection of libraries that can be used to analyze data.
At the end of the module, students are expected to:
- Remember the syntax and semantics of the Python language;
- Understand programs written by others individuals;
- Analyze a simple data analysis task and reformulate it as a programming problem;
- Evaluate which features of the language (and related scientific libraries) can be used to solve the task;
- Construct a Python program that appropriately solves the task;
- Evaluate the results of the program.
Mode
Teaching for this course is in synchronous online mode. The details for the connection to the theoretical lectures and the labs are available on the Moodle page of the course.
Course Information
Instructor: |
Andrea Passerini Email: |
Teaching assistants: |
Luca Bianco (QCB) Email: luca.bianco [guess what] fmach.it David Leoni (Data Science) Email: david.leoni [guess what] unitn.it |
Tutors: |
Gabriele Masina (QCB) Email: gabriele.masina [guess what] studenti.unitn.it Andrea Ferigo (Data Science) Email: andrea.ferigo [guess what] studenti.unitn.it |
Office hours: |
Please write an email to arrange a call. |
Lecture time: |
Monday 14.30-16.30 (lab) Tuesday 15.30-17.30 (lecture) Wednesday 11.30-13.30 (lab) Thursday 15.30-17.30 (lecture) |
Communications: | Please check the moodle page of the course for news and updates. | Bibliography: |
Allen Downey, Think python — How to think like a Computer Scientist, Green Tea Press [pdf] M. Lutz, Learning Python (5th edition), O'REILLY, 2013. |
Slides: |
TBD
Course introduction [slides] [handouts]
Introduction to Python [slides] [handouts] Strings, lists, tuples and dictionaries [slides] [handouts] Complex statements [slides] [handouts] Functions [slides] [handouts] Modules and programs [slides] [handouts] Pandas [slides] [handouts] Numpy+MatPlotLib [slides] [handouts] Recursion [slides] [handouts] Programming paradigms [slides] [handouts] Exercises — 1 [slides] [handouts] |
Lab: |
Lab page (QCB) Lab page (Data Science) |
Exams
Modality: | Written exam |