Biol425 2013: Difference between revisions

From QiuLab
Jump to navigation Jump to search
imported>Weigang
imported>Weigang
Line 72: Line 72:


===February 6===
===February 6===
*'''Chapter 1.''' Central Dogma & Wet Lab Tools [[Media:Molecular_Biology_and_Genomics.pdf|Lecture Slides Ch.1-Che]]
* Learning goal: Unix text filters (Continued)
*'''Beginning Perl''' ([[Media:Bio425_beginning_perl.pdf‎|Beginning Perl, Part 1 Slides]])
* In-Class Exercises (To Be Posted)
* Assignment 2 (to be posted)


===February 13===
===February 13===

Revision as of 23:17, 30 January 2013

Computational Molecular Biology (BIOL 425/790.49, Spring 2013)
Instructors: Weigang Qiu (Associate Professor of Biology) & Che Martin (Assistant)
Room:1000G HN (10th Floor, North Building, Computer Science Department, Linux Lab)
Hours: Wednesdays 10:10 am-12:40 pm
Office Hours: Room 839 HN; Wednesdays 5-7pm or by appointment
Contacts: Dr Qiu: weigang@genectr.hunter.cuny.edu, 212-772-5296; Che: cmartin@gc.cuny.edu, 917-684-0864

General Information

Course Description

  • Background: Biomedical research is becoming a high-throughput science. As a result, information technology plays an increasingly important role in biomedical discovery. Bioinformatics is a new interdisciplinary field formed between molecular biology and computer science.
  • Contents: This course will introduce both bioinformatics theories and practices. Topics include: database searching, sequence alignment, molecular phylogenetics, structure prediction, and microarray analysis. The course is held in a UNIX-based instructional lab specifically configured for bioinformatics applications.
  • Problem-based Learning (PBL): For each session, students will work in groups to solve a set of bioinformatics problems. Instructor will serve as the facilitator rather than a lecturer. Evaluation of student performance include both active participation in the classroom work as well as quality of assignments (see #Grading Policy).
  • Learning Goals: After competing the course, students should be able to perform most common bioinformatics analysis in a biomedical research setting. Specifically, students will be able to
    • Approach biological questions evolutionarily ("Tree-thinking")
    • Evaluate and interpret computational results statistically ("Statistical-thinking")
    • Formulate informatics questions quantitatively and precisely ("Abstraction")
    • Design efficient procedures to solve problems ("Algorithm-thinking")
    • Manipulate high-volume textual data using UNIX tools, Perl/BioPerl, R, and Relational Database ("Data Visualization")
  • Pre-requisites: This 3-credit course is designed for upper-level undergraduates and graduate students. Prior experiences in the UNIX Operating System and at least one programming language are required. Hunter pre-requisites are CSCI132 (Practical Unix and Perl Programming) and BIOL300 (Biochemistry) or BIOL302 (Molecular Genetics), or permission by the instructor. Warning: This is a programming-based bioinformatics course. Working knowledge of UNIX and Perl is required for successful completion of the course.
  • Textbook: Krane & Raymer (2003). Fundamental Concepts of Bioinformatics. Pearson Education, Inc. (ISBN 0-8053-4633-3)
  • Academic Honesty: Hunter College regards acts of academic dishonesty (e.g., plagiarism, cheating on examinations, obtaining unfair advantage, and falsification of records and official documents) as serious offenses against the values of intellectual honesty. The College is committed to enforcing the CUNY Policy on Academic Integrity and will pursue cases of academic dishonesty according to the Hunter College Academic Integrity Procedures.

Grading Policy

  • Treat assignments as take-home exams. Student performance will be evaluated by weekly assignments and projects. While these are take-home projects and students are allowed to work in groups and answers to some of the questions are provided in the back of the textbook, students are expected to compose the final short answers, computer commands, and code independently. There are virtually an unlimited number of ways to solve a computational problem, as are ways and personal styles to implement an algorithm. Writings and blocks of codes that are virtually exact copies between individual students will be investigated as possible cases of plagiarism (e.g., copies from the Internet, text book, or each other). In such a case, the instructor will hold closed-door exams for involved individuals. Zero credits will be given to ALL involved individuals if the instructor considers there is enough evidence for plagiarism. To avoid being investigated for plagiarism, Do NOT copy from others or let others copy your work.
  • Submit assignments in Printed Hard Copies. Email attachments will NOT be accepted. Each assignment will be graded based on timeliness (10%), whether executable or having major errors (50%), algorithm efficiency (10%), and readability in programming styles (30%, see #Assignment Expectations).
  • The grading scheme
    • Assignments (100 pts): 10 exercises.
    • Mid-term (50 pts).
    • Final Project (50 pts)
    • Classroom performance (50 pts): Active engagement in classroom exercises and discussions
    • Attendance (50 pts): 1 unexcused absences = 40; 2 absences = 30; More than 2 = 0.

Assignment Expectations

  • Use a programming editor (e.g., vi or emacs) so you could have features like automatic syntax highlighting, indentation, and matching of quotes and parenthesis.
  • All PERL code must begin with "use strict; and use warnings;" statements. For each assignment, unless otherwise stated, I would like the full text of the source code. Since you cannot print using the text editor in the lab (even if you are connected from home), you must copy and paste the code into a word processor or a local text editor. If you are using a word processor, change the font to a fixed-width/monospace font. On Windows, this is usually Courier.
  • Also, unless otherwise stated, both the input and the output of the program must be submitted as well. This should also be in fixed-width font, and you should label it in such a way so that I know it is the program's input/output. This is so that I know that you've run the program, what data you have used, and what the program produced. If you are working from the lab, one option is to email the code to yourself, change the font, and then print it somewhere else as there is no printer in the lab.
  • Recommended Style
  • Bad Style

Course Schedule (All Wednesdays)

January 30

  • Course Overview
  • Learning Goal: The power of Unix text filters
  • In-Class Exercises:
  1. You will need these 2 files for the following questions: /data/biocs/b/bio425/data/GBB.1con, GBB.seq
    1. What is a genome? What does a bacterial genome typically consist of? Explain the following terms: chromosome, plasmids, and contig
    2. Specify the FASTA file format
    3. What is the size of the Borrelia burgdorferi (the Lyme disease pathogen) B31 genome in terms of
      1. Number of replicons: From your home directory, run:
        grep -c "^>" ../../bio425/data/GBB.1con [Answer: N=22 replicons] 
      2. Number of genes: From your home directory, run:
        grep -c "^>" ../../bio425/data/GBB.seq [Answer: N=1,738 genes] 
      3. Number of bases: First filter out FASTA headers using "grep -v" and then remove newline characters using "tr -d":
        grep -v "^>" ../../bio425/data/GBB.1con | tr -d '\n' | wc -m [Answer: N=1,519,856 bases] 
  2. Based on the file /data/biocs/b/bio425/data/ge-breast-cancer-cell-lines.dat, answer the following questions:
    1. What is a transcriptome?
    2. How many unique genes are represented in this chip?
      cut -f1 ../../bio425/data/ge-breast-cancer-cell-lines.dat | grep -vc "^Description" [Answer: N=18,900 genes]
    3. How many cell lines in the file?
      grep "^Description" ../../bio425/data/ge-breast-cancer-cell-lines.dat| cut -f2- | wc -w [Answer: N=59 cells]
    4. Extract gene expression values at 3 breast cancer clinical markers: ERBB2, ESR, and PGR
      grep -wP "ERBB2|ESR1|ESR2|PGR" ../../bio425/data/ge-breast-cancer-cell-lines.dat [You should see 4 rows of gene expression values]
Assignment #1
Unix Text Filters
  1. Display the absolute path of your home directory
  2. List files in your home directory in long format & ordered by their time stamps
  3. List files and directories in the "/data/biocs/b/bio425/" directory from your home directory
  4. Count the number of plasmids in the B. burgdorferi genome using the file "/data/biocs/b/bio425/GBB.seq"
  5. Show the first five lines of the file "GBB.seq" & save it to a file with arbitrary name
  6. Show your last ten commands using "history"
Read Chapter 1

February 6

  • Learning goal: Unix text filters (Continued)
  • In-Class Exercises (To Be Posted)
  • Assignment 2 (to be posted)

February 13

  • Chapter 6. Gene and Genome Structures [Lecture Slides Lecture Slides Ch.6-Che
  • Tutorial: ORF Prediction using GLIMMER
  • Homework: This homework will be graded.

February 20 (No Class)

  • Monday Schedule

February 27

March 6

March 13

March 20 (Mid-Term Exam)

  • MID-TERM EXAM

March 27 (No Class)

Spring Break

April 3

  • MID-TERM

April 10

April 17

April 24

  • Topic: Relational Database and SQL
  • Tutorial: the Borrelia Genome Database

May 1

NO CLASSES (Spring recess)

May 8

May 15

  • Chapter 6 (Gene Expression) & Chapter 8 (Proteomics)
  • Tutorial: Array Data Visualization and Analysis ( Micro-Array Analysis Slides)
  • Homework:Data Analysis using R

May 22 (Final Project Due)

  • Chapter 7. Protein Structure Prediction
  • Final Project Due (TBA)

Useful Links

Unix Tutorials

Perl Help

  • Professor Stewart Weiss has taught CSCI132, a UNIX and Perl class. His slides go into much greater detail and are an invaluable resource. They can be found on his course page here.
  • Perl documentation at perldoc.perl.org. Besides that, running the perldoc command before either a function (with the -f option ie, perldoc -f substr) or a perl module (ie, perldoc Bio::Seq) can get you similar results without having to leave the terminal.

Bioperl

SQL

R Project

  • Install location and instructions for Windows
  • Install location and instructions for Mac OS X
  • Install R-Studio
  • For users of Ubuntu/Debian:
sudo apt-get install r-base-core

Utilities

Other Resources

© Weigang Qiu, Hunter College, Last Update ~~