Scientific Programming: Part A - Programming
|Degrees:||Quantitative and Computational Biology, Data Science|
|Period:||September - October|
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.
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.
Luca Bianco (QCB)
Email: luca.bianco [guess what] fmach.it
David Leoni (Data Science)
Email: david.leoni [guess what] unitn.it
Gabriele Masina (QCB)
Email: gabriele.masina [guess what] studenti.unitn.it
Andrea Ferigo (Data Science)
Email: andrea.ferigo [guess what] studenti.unitn.it
Please write an email to arrange a call.
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.
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 page (QCB)
Lab page (Data Science)