BCH394P BCH364C 2022

From Marcotte Lab
Revision as of 19:27, 28 February 2022 by Marcotte (Talk | contribs)

Jump to: navigation, search

BCH394P/BCH364C Systems Biology & Bioinformatics

Course unique #: 54540/54450
Lectures: Tues/Thurs 11 – 12:30 PM on Zoom until Jan 27 (log in to Canvas for the link), then in WEL 2.110
Instructor: Edward Marcotte, marcotte @ utexas.edu

  • Office hours: Wed 11 AM – 12 noon on Zoom

TA: Muyoung Lee, ml49649 @ utexas.edu

  • TA Office hours: Mon 1-2/Fri 11-12 on Zoom

Class Slack channel: ut-sp22-bioinfo.slack.com
Class Canvas site: https://utexas.instructure.com/courses/1325179

Lectures & Handouts

Mar 1, 2022 - Genome Assembly

  • A gentle reminder that Problem Set 2 is due by 11:59PM Mar 3
  • If you would like a few examples of proteins annotated with their transmembrane and soluble regions (according to UniProt) to help troubleshoot your homework, here are some example yeast protein sequences.
  • From last time, some definitions of sensitivity/specificity & precision/recall. Note that the gene finding community settled early on to a different definition of specificity that corresponds to the precision or PPV in other fields. Other fields define specificity as the true negative rate.
  • Today's slides
  • DeBruijn Primer and Supplement

Feb 24, 2022 - Gene finding II

  • Short classes at UT start this week in genome sequencing, proteomics, and bioinformatics
  • Several of you have asked about programming the Viterbi algorithm for the homework, so I wanted to make sure everyone realized that you are not required to program it. The sequence is short enough that you can solve it in a spreadsheet if that's easier for you.
  • We're finishing up the slides from last time.


Feb 22, 2022 - Gene finding

Reading (a couple of old classics + a review + better splice site detection):

Feb 17, 2022 - HMMs II Problem Set 2, due before midnight Mar. 3, 2022:

Feb 15, 2022 - Hidden Markov Models

  • Happy Class-After-Valentine's Day!
  • Don't forget: Rosalind Homework #2 (worth 10% of your final course grade) is due by 11:59PM February 16.
  • More stats for comp biologists worth checking out: Modern Statistic for Modern Biology, by Susan Holmes and Wolfgang Huber. It's currently available online and available on dead tree. (FYI, all code is in R.)
  • Today's slides


Feb 10, 2022 - Biological databases

Feb 8, 2022 - BLAST

Feb 3, 2022 - ICEPOCALYPSE 2022

  • WEATHER WARNING: Per the President's email, "all classes will be canceled", so no class on Feb. 3. We'll pick up with the scheduled material when campus re-opens!
  • Yes, responding to popular request, we'll extend the Problem Set 1 deadline to midnight Feb. 9, 2022

Feb 1, 2022 - Sequence Alignment II

Jan 27, 2022 - Sequence Alignment I

Problem Set I, due before midnight Feb. 7, 2022:

  • Problem Set 1
  • H. influenzae genome. Haemophilus influenza was the first free living organism to have its genome sequenced. NOTE: there are some additional characters in this file from ambiguous sequence calls. For simplicity's sake, when calculating your nucleotide and dinucleotide frequencies, you can just ignore anything other than A, C, T, and G.
  • T. aquaticus genome. Thermus aquaticus helped spawn the genomic revolution as the source of heat-stable Taq polymerase for PCR.
  • 3 mystery genes (for Problem 5): MysteryGene1, MysteryGene2, MysteryGene3
  • *** HEADS UP FOR THE PROBLEM SET *** If you try to use the Python string.count function to count dinucleotides, Python counts non-overlapping instances, not overlapping instances. So, AAAA is counted as 2, not 3, dinucleotides. You want overlapping dinucleotides instead, so will have to try something else, such as the python string[counter:counter+2] command, as explained in the Rosalind homework assignment on strings.

Extra reading, if you're curious:

Jan 25, 2022 - Intro to Python #2

  • Reminder that today will be part 2 of the "Python boot camp" for those of you with little to no previous Python coding experience. We'll be finishing the slides from last time, plus Rosalind help & programming Q/A.
  • Also, don't forget that the Rosalind assignments are due by 11:59PM January 27. Please do start if you haven't already, or you won't have time to get help if you have any issues installing Python.
  • Another strong recommendation (really) to the Python newbies to download Eric Matthes's GREAT, free Python command cheat sheets that he provides to accompany his Python Crash Course book.

Jan 20, 2022 - Intro to Python

  • STANDARD REMINDER: My email inbox is always fairly backlogged (e.g., my median time between non-spam emails was 11 minutes when I measured it some time ago, and it's gotten much worse since then), so please copy the TA on all emails to help us make sure they get taken care of.
  • Today's slides
  • E. coli genome
  • Python 2 vs 3? Bioinformatics researchers held out for 2 until quite recently, but the shift to 3 is pretty clear now. We'll use Python 3 (the latest version is 3.10, but any recent version will be fine), but Rosalind and some materials are only available in Python 2.7, so we'll generally try to be version agnostic for compatibility. Use whichever you wish, but be aware that support for Python 2.7 has officially been stopped. For beginners, the differences are quite minimal and are summarized in a table here. There's also a great cheat sheet here for writing code compatible with both versions.

Jan 18, 2022 - Introduction

  • Today's slides
  • We'll be conducting homework using the online environment Rosalind. Go ahead and register on the site, and enroll specifically for BCH394P/364C (Spring 2022) Systems Biology/Bioinformatics using this link. Homework #1 (worth 10% of your final course grade) has already been assigned on Rosalind and is due by 11:59PM January 27.

Here are some online Python resources that you might find useful:

Syllabus & course outline

Course syllabus

An introduction to systems biology and bioinformatics, emphasizing quantitative analysis of high-throughput biological data, and covering typical data, data analysis, and computer algorithms. Topics will include introductory probability and statistics, basics of Python programming, protein and nucleic acid sequence analysis, genome sequencing and assembly, proteomics, synthetic biology, analysis of large-scale gene expression data, data clustering, biological pattern recognition, and gene and protein networks.

Open to graduate students and upper division undergrads (with permission) in natural sciences and engineering. Prerequisites: Basic familiarity with molecular biology, statistics & computing, but realistically, it is expected that students will have extremely varied backgrounds. Undergraduates have additional prerequisites, as listed in the catalog.

Note that this is not a course on practical sequence analysis or using web-based tools. Although we will use a number of these to help illustrate points, the focus of the course will be on learning the underlying algorithms and exploratory data analyses and their applications, esp. in high-throughput biology. By the end of the course, students will know the fundamentals of important algorithms in bioinformatics and systems biology, be able to design and implement computational studies in biology, and have performed an element of original computational biology research.

Most of the lectures will be from research articles and slides posted online, with some material from the...
Optional text (for sequence analysis): Biological sequence analysis, by R. Durbin, S. Eddy, A. Krogh, G. Mitchison (Cambridge University Press),

For biologists rusty on their stats, The Cartoon Guide to Statistics (Gonick/Smith) is very good. A reasonable online resource for beginners is Statistics Done Wrong.

Some online references:
An online bioinformatics course
Online probability & stats texts: #1, #2 (which has some lovely visualizations)

No exams will be given. Grades will be based on online homework (counting 30% of the grade), 3 problem sets (given every 2-3 weeks and counting 15% each towards the final grade) and an independent course project (25% of final grade), which can be collaborative (1-3 students/project). The course project will consist of a research project on a bioinformatics topic chosen by the student (with approval by the instructor) containing an element of independent computational biology research (e.g. calculation, programming, database analysis, etc.). This will be turned in as a link to a web page. The final project is due by midnight, April 25, 2022. The last 3 classes will be spent presenting your projects to each other. (The presentation will account for 5/25 points of the project grade.)

Since we will be in coronavirus lockdown at the start of this semester, this portion of the class will be web-based. We will hold lectures by Zoom during the normally scheduled class time. Log in to the UT Canvas class page for the link, or, if you are auditing, email the TA and he will send the link by return email. Slides will be posted before class on this web site so you can follow along with the material. We'll record the lectures & post the recordings afterward on Canvas so any of you who might be in other timezones or otherwise be unable to make class will have the opportunity to watch them. Note that the recordings will only be available on Canvas and are reserved only for students in this class for educational purposes and are protected under FERPA. The recordings should not be shared outside the class in any form. Violation of this restriction by a student could lead to Student Misconduct proceedings.

Online homework will be assigned and evaluated using the free bioinformatics web resource Rosalind.

All projects and homework will be turned in electronically and time-stamped. No makeup work will be given. Instead, all students have 5 days of free “late time” (for the entire semester, NOT per project, and counting weekends/holidays). For projects turned in late, days will be deducted from the 5 day total (or what remains of it) by the number of days late (in 1 day increments, rounding up, i.e. 10 minutes late = 1 day deducted). Once the full 5 days have been used up, assignments will be penalized 10 percent per day late (rounding up), i.e., a 50 point assignment turned in 1.5 days late would be penalized 20%, or 10 points.

Homework, problem sets, and the project total to a possible 100 points. There will be no curving of grades, nor will grades be rounded up. We’ll use the plus/minus grading system, so: A= 92 and above, A-=90 to 91.99, etc. Just for clarity's sake, here are the cutoffs for the grades: 92% = A, 90% = A- < 92%, 88% = B+ < 90%, 82% = B < 88%, 80% = B- < 82%, 78% = C+ < 80%, 72% = C < 78%, 70% = C- < 72%, 68% = D+ < 70%, 62% = D < 68%, 60% = D- < 62%, F < 60%.

Students are welcome to discuss ideas and problems with each other, but all programs, Rosalind homework, problem sets, and written solutions should be performed independently (except the final collaborative project). Students are expected to follow the UT honor code. Cheating, plagiarism, copying, & reuse of prior homework, projects, or programs from CourseHero, Github, or any other sources are all strictly forbidden and constitute breaches of academic integrity and cause for dismissal with a failing grade, possibly expulsion (UT's academic integrity policy). In particular, no materials used in this class, including, but not limited to, lecture hand-outs, videos, assessments (papers, projects, homework assignments), in-class materials, review sheets, and additional problem sets, may be shared online or with anyone outside of the class unless you have the instructor’s explicit, written permission. Any materials found online (e.g. in CourseHero) that are associated with you, or any suspected unauthorized sharing of materials, will be reported to Student Conduct and Academic Integrity in the Office of the Dean of Students. These reports can result in sanctions, including failure in the course.

The final project web site is due by midnight April 25, 2022.

Finally, between the pandemic and snowpocalypse, the last two years have really pushed our class schedule around a lot, so we’re going to reserve the last class day, May 5, as an emergency flex day. The current plan is for classes to end on May 3 and for there to be NO CLASS on May 5, but if weather, the pandemic, etc, leads to loss of lecture days, we’ll vote as a class to extend class to May 5.