Spring 2022 - MBB 243 D100

Data Analysis for Molecular Biology and Biochemistry (3)

Class Number: 2663

Delivery Method: In Person


  • Course Times + Location:

    Jan 10 – Apr 11, 2022: Wed, 2:30–4:20 p.m.

  • Exam Times + Location:

    Apr 14, 2022
    Thu, 7:00–10:00 p.m.

  • Prerequisites:

    MBB 222 and MATH 152 or MATH 155. STAT 201 (or an equivalent statistics course) or STAT 270 is recommended.



Introductory data analysis focusing on molecular biology data sets and examples and including basic programming skills using Python and basic statistics skills using R.


The purpose of this introductory data analysis course is to teach students in molecular biology or any students who will analyze molecular data, basic knowledge of molecular biology data types, data analysis methods including basic programming skills using Python, and basic statistics skills using R.


Lecture 1 Molecular biology data: flavours and common file formats
Lecture 2 Molecular biology data: genomes and annotation
Lecture 3 Fundamentals of R and Python
Lecture 4 Getting/parsing/manipulating sequence data using shell, R and Python
Lecture 5 Regular expressions and patterns
Lecture 6 Quantitative DNA/RNA sequence analysis
(Midterm exam)
Lecture 7 Genome-scale data analysis
Lecture 8 Plotting with ggplot2
Lecture 9 Techniques for tidying, merging and manipulating tabular data
Lecture 10 Basic modeling
Lecture 11 Visualization of genomic annotations
Lecture 12 Advanced data visualization methods
(Final exam)


Lab 1 Shell competency 1: manipulating and searching plain text formats
Lab 2 Shell competency 2: installing, managing and running command-line utilities
Lab 3 Basic data types and operations in Python and R
Lab 4 Conditionals and control flow in Python and R
Lab 5 Application of regular expressions in Python and R
Lab 6 Quantitative analysis of DNA and protein sequences
Lab 7 Tidy data, data frames and data tables
Lab 8 Plotting genomic and other flavours of data
Lab 9 Cleaning and combining data sets
Lab 10 Creating and visualizing models
Lab 11 Fundamentals of Bioconductor
Lab 12 Selected topics


  • In class lab tasks: In each lab, there is a list of tasks that should be accomplished in class. Results are submitted by the end of each lab. 20%
  • Lab assignments: Short assignments will be handed out in lab sessions and will be due at the start of your lab one week later, unless indicated otherwise. There is a 10% per day late penalty for assignments received after the due date time. 35%
  • Midterm and final exams - a mixture of multiple choice, short answer and written questions. (10% for midterm exam and 25% for final exam) 35%
  • Participation 10%


Students with credit for CMPT 102, 120, 125, 126, 128 or 130 may not take this course for further credit.



Python for Biologists.  Martin Jones.  2013. CreateSpace Independent Publishing Platform.
ISBN: 978-1492346135

Department Undergraduate Notes:

  • For help with writing, learning and study strategies please contact the Student Learning Commons at
  • Students requiring accommodations as a result of a disability, must contact the Centre for Accessible Learning (778-782-3112 or e-mail:  caladmin@sfu.ca)

Registrar Notes:


SFU’s Academic Integrity web site http://www.sfu.ca/students/academicintegrity.html is filled with information on what is meant by academic dishonesty, where you can find resources to help with your studies and the consequences of cheating.  Check out the site for more information and videos that help explain the issues in plain English.

Each student is responsible for his or her conduct as it affects the University community.  Academic dishonesty, in whatever form, is ultimately destructive of the values of the University. Furthermore, it is unfair and discouraging to the majority of students who pursue their studies honestly. Scholarly integrity is required of all members of the University. http://www.sfu.ca/policies/gazette/student/s10-01.html


Teaching at SFU in spring 2022 will involve primarily in-person instruction, with safety plans in place.  Some courses will still be offered through remote methods, and if so, this will be clearly identified in the schedule of classes.  You will also know at enrollment whether remote course components will be “live” (synchronous) or at your own pace (asynchronous).

Enrolling in a course acknowledges that you are able to attend in whatever format is required.  You should not enroll in a course that is in-person if you are not able to return to campus, and should be aware that remote study may entail different modes of learning, interaction with your instructor, and ways of getting feedback on your work than may be the case for in-person classes.

Students with hidden or visible disabilities who may need class or exam accommodations, including in the context of remote learning, are advised to register with the SFU Centre for Accessible Learning (caladmin@sfu.ca or 778-782-3112) as early as possible in order to prepare for the spring 2022 term.