Home » Teaching » BINF 524 - Fall 2021

Bioinformatics Computing (BINF 524 - Fall 2021)

This course provides a hands-on introduction to programming for bioinformatics using the scripting language Python. Students will build a portfolio of scripts that automate common bioinformatics tasks, from reading and writing common bioinformatics file formats and accessing data in relational databases and web-based repositories, interfacing with external tools such as blast, and building web-based resources for use by interactive users or as web-services. Students will be assigned weekly programming exercises and will complete a term project implementing a significant bioinformatics analysis. Grades will be assigned based on weekly programming exercises (60%) and the term project (40%).

Students enrolled in the five credit section are required to attend the lab session, which is optional for students enrolled in the three credit section.

Course Director

Nathan Edwards, PhD
Suite 040A, Room G215
2115 Wisconsin Ave.
nje5@georgetown.edu

Time

Lectures:
Monday 1:15 - 2:45pm. MedDent NE201C
Wednesday 1:15 - 2:45pm. MedDent NE201C

Lab:
Friday 10:00am - 12:00pm. Wisconsin 2115, Room G1-001

Virtual Instruction Details

While the normal mode of instruction will be in person, students may need to quarantine or be otherwise unable to attend in person.
  • Lectures will be conducted synchronously via Zoom and recorded and uploaded for asynchronous viewing.
  • Students requiring virtual instruction are not required to join the lectures synchronously, especially if time-zones or other logistical obstacles make this difficult.
  • Students attending virtual instruction synchronously are generally expected to leave their cameras on to promote active participation and engagement.
  • Students attending virtual instruction synchronously are encouraged to speak up during lectures and ask questions verbally or in the chat.
  • The lab session will not be recorded. Students may attend virtually, I will have the Zoom session open, but will work with those in person first.
  • Zoom meeting links will be password protected and available from Canvas.

Course Software

We will be using a VirtualBox based virtual machine, running Linux (CentOS 7.8), as our course programming environment. The course software (Google Drive, Edwards Lab) includes the VirtualBox installer for Windows and OS X and the virtual machine image. We will be using the Anaconda Python distribution, with a number of extra python packages and software programs pre-installed, including BioPython, PySAM, SQLObject,TurboGears, NCBI Blast, and PyMol.

Downloads

Textbook

Textbook (not required) is Bassi, "Python for Bioinformatics."

Important Links

Python Programming Tutorials

Bioinformatics Programming Challenge Sites

Syllabus

Date Room Description Resources
Wed 8/25/2021
1:15 - 2:45
MedDent NE201CIntroduction to Python I
Installation, Syntax, Numbers
Administrivia, Lecture 1: Slides, Recording (mp4)
Fri 8/27/2021
10:00 - 12:00
WIS2115 G1-001Introduction to Python II
Virtual Box, Numbers, Strings, DNA
Lecture 2: Slides, Recording (mp4)
Mon 8/30/2021
1:15 - 2:45
MedDent NE201CIntroduction to Python III
Using Functions and Methods, New Functions, Control Flow
Lecture 3: Slides, Recording (mp4)
Wed 9/1/2021
1:15 - 2:45
MedDent NE201CIntroduction to Python IV
Conditional Execution, Loops
Lecture 4: Slides, Recording (mp4)
Fri 9/3/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 9/6/2021
University Holiday
No class
Wed 9/8/2021
1:15 - 2:45
MedDent NE201CIntroduction to Python V
DNA as a string
Lecture 5: Slides, Recording (mp4)
Fri 9/10/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 9/13/2021
1:15 - 2:45
MedDent NE201CIntroduction to Python VI
Program I/O
Lecture 6: Slides, Recording (mp4)
Wed 9/15/2021
1:15 - 2:45
MedDent NE201CPython Data Structures: Lists
Lists.
Lecture 7: Slides, Recording (mp4)
Fri 9/17/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 9/20/2021
1:15 - 2:45
MedDent NE201CAdvanced Python Data Structures
Dictionaries, Sets, Files. Reading sequences, parsing codon tables, and DNA translation.
Lecture 8: Slides, Recording (mp4)
Wed 9/22/2021
1:15 - 2:45
MedDent NE201CBasic Python Review
Lots of examples
Lecture 9: Slides, Recording (mp4)
Fri 9/24/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 9/27/2021
1:15 - 2:45
MedDent NE201CAdvanced Python Idioms
Iteration and iterables, comprehension, functional programming.
Lecture 10: Slides, Recording (mp4)
Wed 9/29/2021
1:15 - 2:45
MedDent NE201CPython Modules and Basic File Parsing.
sys, os, os.path; compression; URLS; and CSV.
Lecture 11: Slides, Recording (mp4)
Fri 10/1/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 10/4/2021
1:15 - 2:45
MedDent NE201CSequence File Parsing using Biopython.
Bio.SeqIO
Lecture 12: Slides, Recording (mp4)
Wed 10/6/2021
1:15 - 2:45
MedDent NE201CNext Gen. Sequencing
PySAM
Lecture 13: Slides, Recording (mp4)
Fri 10/8/2021
11:00 - 1:00
WIS2115 G1-001Lab
Mon 10/11/2021
University Holiday
No class
Wed 10/13/2021
1:15 - 2:45
MedDent NE201CXML
ElementTree (xml.etree)
Lecture 14: Slides, Recording (mp4)
Fri 10/15/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 10/18/2021
1:15 - 2:45
MedDent NE201CMatrices, Data-Frames
numpy, pandas.
Wed 10/20/2021
1:15 - 2:45
MedDent NE201CAdvanced Python Concepts
Modules.
Fri 10/22/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 10/25/2021
1:15 - 2:45
MedDent NE201CAdvanced Python Concepts
Exceptions.
Wed 10/27/2021
1:15 - 2:45
MedDent NE201CAdvanced Python Concepts
Object Oriented Programming.
Fri 10/29/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 11/1/2021
1:15 - 2:45
MedDent NE201CAdvanced Python Concepts
Object Oriented Programming and Inheritance.
Wed 11/3/2021
1:15 - 2:45
MedDent NE201CProject Description
Fri 11/5/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 11/8/2021
1:15 - 2:45
MedDent NE201CUsing Web-Services
NCBI's E-Utils and online Blast.
Wed 11/10/2021
1:15 - 2:45
MedDent NE201CUsing Local Tools
Blast.
Fri 11/12/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 11/15/2021
1:15 - 2:45
MedDent NE201CRelational Databases
Basic Concepts.
Wed 11/17/2021
1:15 - 2:45
MedDent NE201CRelational Databases
Object Relational Mappers, SQLObject I.
Fri 11/19/2021
10:00 - 12:00
WIS2115 G1-001Lab
Mon 11/22/2021
1:15 - 2:45
MedDent NE201CRelational Databases
Object Relational Mappers, SQLObject II.
Wed 11/24/2021
1:15 - 2:45
MedDent NE201CGraphics and Plots
matplotlib.
Fri 11/26/2021
Thanksgiving Recess
No class
Mon 11/29/2021
1:15 - 2:45
MedDent NE201CWeb-applications
TurboGears.
Wed 12/1/2021
1:15 - 2:45
MedDent NE201CWeb-applications
TurboGears.
Fri 12/3/2021
10:00 - 12:00
WIS2115 G1-001Project
Mon 12/6/2021
1:15 - 2:45
MedDent NE201CProject
Fri 12/10/2021
10:00 - 12:00
WIS2115 G1-001Project
Fri 12/17/2021
WIS2115 G1-001Project Presentations
Project due.