ADVANCED PYTHON PROGRAMMING
Dates: 20-24 November 2023
To foster international participation, this course will be held online
Course website: https://www.physalia-courses.org/courses-workshops/advanced-python/
COURSE OVERVIEW
This five-day course is designed to provide the foundations and typical workflow of data science, with a particular focus on biology and life sciences, using the Python programming language. Throughout the course, participants will learn intermediate to more advanced concepts of Python programming with practical applications to common case studies in biology.
TARGET AUDIENCE AND ASSUMED BACKGROUND
The course is intended for biologists and life scientists at all levels with some prior programming experience and basic knowledge of Python (general syntax, variables, lists, conditionals, loops). The course will begin with a Python refresher and then cover more complex aspects.
LEARNING OUTCOMES
By the end of the course, participants will be able to:
- understand the different steps of a data science workflow in biology
- write Python code to prepare, process, analyze, and visualize biological data
- write automated Python workflows for bioinformatics pipelines
- understand the basics of machine learning using Python
- understand the principles of data visualization with applications in Python
PROGRAM
Monday - Classes from 2-6 PM Berlin time
- Intro to data science and its applications in biology
- Python refresher
- Intermediate Python: functions, classes, modules, tips & tricks
- Data preprocessing and wrangling
Tuesday - Classes from 2-6 PM Berlin time
Bioinformatics with Python
- common case studies (i.e. sequence analysis and alignment, next-gen sequencing data processing, working with genomes, population genetics, reading data from public databases)
- building bioinformatics pipelines
Wednesday - Classes from 2-6 PM Berlin time
Machine learning:
- Intro and theoretical foundations
- Supervised, unsupervised, and reinforcement learning
- Commonly used algorithms
- Feature engineering and selection
- Train-test split and cross-validation
- Hands-on with scikit-learn
Thursday - Classes from 2-6 PM Berlin time
Data visualization:
- introduction and theoretical concepts
- principles and common errors
- Hands-on with Python plotting libraries such as matplotlib and seaborn
Friday - Classes from 2-6 PM Berlin time
Deep learning in Biology:
- intro to deep learning concepts and architectures
- convolutional neural networks for image analysis
- transfer learning and fine-tuning of pre-trained models
- intro to pytorch and hands-on practical