BCH394P BCH364C 2020
BCH394P/BCH364C Systems Biology & Bioinformatics
Course unique #: 53545/53436
Lectures: Tues/Thurs 11 – 12:30 PM in JGB 2.202
Instructor: Edward Marcotte, marcotte @ icmb.utexas.edu
- Office hours: Wed 11 AM – 12 noon in MBB 3.148BA
TA: Brendan Floyd, bmfloyd @ utexas.edu
- TA Office hours: Mon 1-2/Fri 1:30-2:30 in NHB 3.400B atrium (or MBB 3.128B) Phone: 512-232-3919
Lectures & Handouts
Feb 13, 2020 - Hidden Markov Models
- Happy Day-Before-Valentine's Day!
- Don't forget: Rosalind Homework #2 (worth 10% of your final course grade) is due by 11:59PM February 19.
- 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
- HMM primer and Bayesian statistics primer #1, Bayesian statistics primer #2, Wiki Bayes
- Care to practice your regular expressions? (In python?)
Feb 11, 2020 - Biological databases
- Homework #2 (worth 10% of your final course grade) has been assigned on Rosalind and is due by 11:59PM February 19.
- Just a note that we'll be seeing ever more statistics as go on. Here's a good primer from Prof. Lauren Myers to refresh/explain basic concepts.
- Today's slides
Feb 6, 2020 - BLAST
- Our slides today are modified from a paper on Teaching BLAST by Cheryl Kerfeld & Kathleen Scott.
- The original BLAST paper
- The protein homology graph paper. Just for fun, here's a link to a stylized version we exhibited in the engaging Design and the Elastic Mind show at New York's Museum of Modern Art.
Feb 4, 2020 - Sequence Alignment II
- Science news of the day: Wuhan coronavirus, DNA sequencing, bioinformatics, and bioRxiv!. The genome papers have already been published at Nature 1 2! For the record, I consider this a huge win for biology, medicine, and the new trend in bio publishing of depositing preprints + public discussion/pre-publication peer review, often well in advance (but not this time!) of the more traditional peer review & publication at a journal.
- We're finishing up the slides from last time.
- Fact and Fiction in Sequence Alignments
- Dynamic programming primer
- An example of dynamic programming using Excel, created by Michael Hoffman (a former U Texas undergraduate, now U Toronto professor, who took a prior incarnation of this class)
- A few examples of proteins with internally repetitive sequences: 1, 2, 3
Jan 30, 2020 - Sequence Alignment I
Problem Set I, due before midnight Feb. 10, 2020:
- 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.
- For those of you who could use more tips on programming, there's a weekly peer-led open coding hour happening on Wednesday 12:30-1:30pm in MBB 2.232 (2nd floor lounge). It's a very informal setting where you can work and ask questions of more experienced programmers.
- BLOSUM primer
- The original BLOSUM paper (hot off the presses from 1992!)
- BLOSUM miscalculations improve performance
- There is a good discussion of the alignment algorithms and different scoring schemes here
Jan 28, 2020 - Intro to Python #2
- We'll be finishing Python slides from last time, plus Rosalind help & programming Q/A, maybe a glimpse of next lecture.
- Statistics in Python
Jan 23, 2020 - Intro to Python
- Recommended seminar! Mike Eisen (UC Berkeley) will be speaking Monday Jan 27, 3PM, NHB 1.720
- 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 any emails to me to make sure they get taken care of.
- Today's slides
- Python primer
- E. coli genome
- Python 2 vs 3?. We'll use Python 3 (the latest version is 3.8), 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 compatable with both versions.
Jan 21, 2020 - Introduction
- Today's slides
- Some warm-up videos to get you started on Python (2 not 3, unless you pay for an upgrade): Code Academy's Python coding for beginners
- Khan Academy has archived their videos on Python here
- We'll be conducting homework using the online environment Rosalind. Go ahead and register on the site, and enroll specifically for BCH394P/364C (Spring 2020) 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 30.
- A useful online resource if you get bogged down: Python for Biologists. (& just a heads-up that some of their instructions for running code relate to a command line environment that's a bit different from the default one you install following the Rosalind instructions. It won't affect the programs, just the way they are run or how you specific where files are located.) However, if you've never programmed Python before, definitely check this out!!!
Syllabus & course outline
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.
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),
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). 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 27, 2020. The last 2.5 classes will be spent presenting your projects to each other. (The presentation will account for 5/25 points for the project.)
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 . 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 (UT academic integrity policy and Sec. 11–402. Academic Dishonesty) and cause for dismissal with a failing grade.
The final project web site is due by midnight April 27, 2020.
- How to make a web site for the final project
- Google Site: https://support.google.com/sites/answer/153197?hl=en