Table of Contents
Chapter 1 Introduction
1.1 What is Biopython?
1.1.1 What can I find in the Biopython package
1.2 Installing Biopython
1.3 FAQ
Chapter 2 Quick Start -- What can you do with Biopython?
2.1 General overview of what Biopython provides
2.2 Working with sequences
2.3 A usage example
2.4 Parsing sequence file formats
2.4.1 Simple FASTA parsing example
2.4.2 Simple GenBank parsing example
2.4.3 I love parsing -- please don't stop talking about it!
2.5 Connecting with biological databases
2.6 What to do next
Chapter 3 Sequence objects
3.1 Sequences and Alphabets
3.2 Sequences act like strings
3.3 Slicing a sequence
3.4 Turning Seq objects into strings
3.5 Nucleotide sequences and (reverse) complements
3.6 Concatenating or adding sequences
3.7 MutableSeq objects
3.8 Transcribing and Translation
3.9 Working with directly strings
Chapter 4 Sequence Input/Output
4.1 Parsing or Reading Sequences
4.1.1 Reading Sequence Files
4.1.2 Iterating over the records in a sequence file
4.1.3 Getting a list of the records in a sequence file
4.1.4 Extracting data
4.2 Parsing sequences from the net
4.2.1 Parsing GenBank records from the net
4.2.2 Parsing SwissProt sequences from the net
4.3 Sequence files as Dictionaries
4.3.1 Specifying the dictionary keys
4.3.2 Indexing a dictionary using the SEGUID checksum
4.4 Writing Sequence Files
4.4.1 Converting between sequence file formats
4.4.2 Converting a file of sequences to their reverse complements
Chapter 5 BLAST
5.1 Running BLAST locally
5.2 Running BLAST over the Internet
5.3 Saving BLAST output
5.4 Parsing BLAST output
5.5 The BLAST record class
5.6 Deprecated BLAST parsers
5.6.1 Parsing plain-text BLAST output
5.6.2 Parsing a file full of BLAST runs
5.6.3 Finding a bad record somewhere in a huge file
5.7 Dealing with PSIBlast
Chapter 6 Bio.Entrez: Accessing NCBI's Entrez databases
6.1 EInfo: Obtaining information about the Entrez databases
6.2 ESearch: Searching the Entrez databases
6.3 EPost
6.4 ESummary: Retrieving summaries from primary IDs
6.5 EFetch: Downloading full records from Entrez
6.6 ELink
6.7 EGQuery: Obtaining counts for search terms
6.8 ESpell: Obtaining spelling suggestions
6.9 Creating web links to the Entrez databases
Chapter 7 Swiss-Prot, Prosite, Prodoc, and ExPASy
7.1 Bio.SwissProt: Parsing Swiss-Prot records
7.2 Bio.Prosite: Parsing Prosite records
7.3 Bio.Prosite.Prodoc: Parsing Prodoc records
7.4 Bio.ExPASy: Accessing the ExPASy server
7.4.1 Retrieving a Swiss-Prot record
7.4.2 Searching Swiss-Prot
7.4.3 Retrieving Prosite and Prodoc records
Chapter 8 Cookbook -- Cool things to do with it
8.1 PubMed
8.1.1 Sending a query to PubMed
8.1.2 Retrieving a PubMed record
8.2 GenBank
8.2.1 Retrieving GenBank entries from NCBI
8.2.2 Parsing GenBank records
8.2.3 Iterating over GenBank records
8.2.4 Making your very own GenBank database
8.3 Dealing with alignments
8.3.1 Clustalw
8.3.2 Calculating summary information
8.3.3 Calculating a quick consensus sequence
8.3.4 Position Specific Score Matrices
8.3.5 Information Content
8.3.6 Translating between Alignment formats
8.4 Substitution Matrices
8.4.1 Using common substitution matrices
8.4.2 Creating your own substitution matrix from an alignment
8.5 BioRegistry -- automatically finding sequence sources
8.5.1 Finding resources using a configuration file
8.5.2 Finding resources through a biopython specific interface
8.6 BioSQL -- storing sequences in a relational database
8.7 BioCorba
8.8 Going 3D: The PDB module
8.8.1 Structure representation
8.8.2 Disorder
8.8.3 Hetero residues
8.8.4 Some random usage examples
8.8.5 Common problems in PDB files
8.8.6 Other features
8.9 Bio.PopGen: Population genetics
8.9.1 GenePop
8.9.2 Coalescent simulation
8.9.3 Other applications
8.9.4 Future Developments
8.10 InterPro
Chapter 9 Advanced
9.1 The SeqRecord and SeqFeature classes
9.1.1 Sequence ids and Descriptions -- dealing with SeqRecords
9.1.2 Features and Annotations -- SeqFeatures
9.2 Regression Testing Framework
9.2.1 Writing a Regression Test
9.3 Parser Design
9.3.1 Design Overview
9.3.2 Events
9.3.3 `noevent' EVENT
9.3.4 Scanners
9.3.5 Consumers
9.3.6 BLAST
9.3.7 Enzyme
9.3.8 KEGG
9.3.9 Fasta
9.3.10 Medline
9.3.11 Prosite
9.3.12 SWISS-PROT
9.3.13 NBRF
9.3.14 Ndb
9.3.15 MetaTool
9.4 Substitution Matrices
9.4.1 SubsMat
9.4.2 FreqTable
Chapter 10 Where to go from here -- contributing to Biopython
10.1 Maintaining a distribution for a platform
10.2 Bug Reports + Feature Requests
10.3 Contributing Code
Chapter 11 Appendix: Useful stuff about Python
11.1 What the heck is a handle?
11.1.1 Creating a handle from a string