The Hebrew University Logo
Syllabus Quantitative Biological Research with Python - 92847
close window close
PDF version
Last update 20-06-2018
HU Credits: 5

Degree/Cycle: 2nd degree (Master)

Responsible Department: Structural & Molecular Biochemistry

Semester: 1st Semester

Teaching Languages: English

Campus: E. Safra

Course/Module Coordinator: Nadav Brandes
Michal Linial

Coordinator Email:

Coordinator Office Hours: By email coordination

Teaching Staff:
Prof Michal Linial

Course/Module description:
In the beginning of this course we will learn how to program in Python from scratch (yet assuming previous programming experience), learning all the basics of the language for generic use (with emphasis on using it for biological problems). After the foundations of Python are established, we will demonstrate how it can be used, together with important Python libraries we will introduce, in order to solve a variety of interesting biological problems. These include the analysis of biological sequences (DNA, RNA and proteins), analyzing genetic variations, and more.

Course/Module aims:
In recent years biological research has shifted from focused narrow experiments to high-throughput assays yielding ever increasing amounts of data. These rapid transformations call for new computational approaches for handling biological data and for conducting biological research in general. Not only bioinformaticians, but the entire biological community, is increasingly urged to use in-silico tools. Although many computational tools and databases are available through user interfaces and web resources, programming and script-writing is still often an indispensable tool, and is an empowering skill that allows much greater flexibility, efficiency and liberty. For this reason we opened this class, to address the specific needs of biological research.

Learning outcomes - On successful completion of this module, students should be able to:
a) Writing Python code
b) Using existing programming libraries for solving biological programming problems
c) Converting a biological research problem into a quantitative one that can be solved with analytical tools (programming, statistics, visualization, etc.)
d) Finding and handling molecular biological data from public databases
e) Generating publishing-level graphs and figures from quantitative analysis
f) Self-reliant learning and problem-solving in topics learned in the class, for independent future research

Attendance requirements(%):

Teaching arrangement and method of instruction: Lecture (25%), Lab (75%)

Course/Module Content:
- Python basics (syntax, variables, loops, flow control, functions, etc.)
- Libraries for general and biological research (for quantitative analysis, handling with data sources, biological sequences and genetic variants, statistics, visualization, etc.)
- Handling biological data files in different formats
- Introduction to public databases with biological and medical data
- Introduction to web tools for genomics and proteomics

Python packages to be learned: ipython & jupyter notebook, biopython, numpy, scipy, pandas, statsmodels, matplotlib, pyvcf
A (partial) list of databases we will work with: UCSC Genome Browser, NCBI RefSeq, ENCODE, UniProt, pfam, ClinVar

Required Reading:

Additional Reading Material:
Basic programming course (books, tutorials, or any other resource)

Course/Module evaluation:
End of year written/oral examination 0 %
Presentation 10 %
Participation in Tutorials 0 %
Project work 0 %
Assignments 20 %
Reports 0 %
Research project 70 %
Quizzes 0 %
Other 0 %

Additional information:
Acceptance to the class is by the teachers only. Registration on RYSHUM-NET is not valid without a confirmation from the teachers.

We require basic knowledge in programming (any language), experimental experience in biology/medicine/agriculture, and understanding of central concepts in genetics and molecular biology.
This is an advanced class that requires a lot of efforts by the participants.
Students needing academic accommodations based on a disability should contact the Center for Diagnosis and Support of Students with Learning Disabilities, or the Office for Students with Disabilities, as early as possible, to discuss and coordinate accommodations, based on relevant documentation.
For further information, please visit the site of the Dean of Students Office.