Beginning Perl for Bioinformatics
By: James Tisdall
Publisher: O'Reilly Media, Inc.
I found this book very helpful to understand the basics of using PERL to design programs that you need, to extract or manipulate data.
If you read this book you'll be able to use your own designed programs to parse database files and extract only what you need and even analyze DNA/RNA or protein data.
Table of ContentsCopyright
Preface
What Is Bioinformatics?
About This Book
Who This Book Is For
Why Should I Learn to Program?
Structure of This Book
Conventions Used in This Book
Comments and Questions
Acknowledgments
1. Biology and Computer ScienceSection 1.1. The Organization of DNA
Section 1.2. The Organization of Proteins
Section 1.3. In Silico
Section 1.4. Limits to Computation
Chapter 2. Getting Started with PerlSection 2.1. A Low and Long Learning Curve
Section 2.2. Perl's Benefits
Section 2.3. Installing Perl on Your Computer
Section 2.4. How to Run Perl Programs
Section 2.5. Text Editors
Section 2.6. Finding Help
Chapter 3. The Art of ProgrammingSection 3.1. Individual Approaches to Programming
Section 3.2. Edit—Run—Revise (and Save)
Section 3.3. An Environment of Programs
Section 3.4. Programming Strategies
Section 3.5. The Programming Process
Chapter 4. Sequences and StringsSection 4.1. Representing Sequence Data
Section 4.2. A Program to Store a DNA Sequence
Section 4.3. Concatenating DNA Fragments
Section 4.4. Transcription: DNA to RNA
Section 4.5. Using the Perl Documentation
Section 4.6. Calculating the Reverse Complement in Perl
Section 4.7. Proteins, Files, and Arrays
Section 4.8. Reading Proteins in Files
Section 4.9. Arrays
Section 4.10. Scalar and List Context
Section 4.11. Exercises
Chapter 5. Motifs and LoopsSection 5.1. Flow Control
Section 5.2. Code Layout
Section 5.3. Finding Motifs
Section 5.4. Counting Nucleotides
Section 5.5. Exploding Strings into Arrays
Section 5.6. Operating on Strings
Section 5.7. Writing to Files
Section 5.8. Exercises
Chapter 6. Subroutines and BugsSection 6.1. Subroutines
Section 6.2. Scoping and Subroutines
Section 6.3. Command-Line Arguments and Arrays
Section 6.4. Passing Data to Subroutines
Section 6.5. Modules and Libraries of Subroutines
Section 6.6. Fixing Bugs in Your Code
Section 6.7. Exercises
Chapter 7. Mutations and RandomizationSection 7.1. Random Number Generators
Section 7.2. A Program Using Randomization
Section 7.3. A Program to Simulate DNA Mutation
Section 7.4. Generating Random DNA
Section 7.5. Analyzing DNA
Section 7.6. Exercises
Chapter 8. The Genetic CodeSection 8.1. Hashes
Section 8.2. Data Structures and Algorithms for Biology
Section 8.3. The Genetic Code
Section 8.4. Translating DNA into Proteins
Section 8.5. Reading DNA from Files in FASTA Format
Section 8.6. Reading Frames
Section 8.7. Exercises
Chapter 9. Restriction Maps and Regular ExpressionsSection 9.1. Regular Expressions
Section 9.2. Restriction Maps and Restriction Enzymes
Section 9.3. Perl Operations
Section 9.4. Exercises
Chapter 10. GenBankSection 10.1. GenBank Files
Section 10.2. GenBank Libraries
Section 10.3. Separating Sequence and Annotation
Section 10.4. Parsing Annotations
Section 10.5. Indexing GenBank with DBM
Section 10.6. Exercises
Chapter 11. Protein Data BankSection 11.1. Overview of PDB
Section 11.2. Files and Folders
Section 11.3. PDB Files
Section 11.4. Parsing PDB Files
Section 11.5. Controlling Other Programs
Section 11.6. Exercises
Chapter 12. BLASTSection 12.1. Obtaining BLAST
Section 12.2. String Matching and Homology
Section 12.3. BLAST Output Files
Section 12.4. Parsing BLAST Output
Section 12.5. Presenting Data
Section 12.6. Bioperl
Section 12.7. Exercises
Chapter 13. Further TopicsSection 13.1. The Art of Program Design
Section 13.2. Web Programming
Section 13.3. Algorithms and Sequence Alignment
Section 13.4. Object-Oriented Programming
Section 13.5. Perl Modules
Section 13.6. Complex Data Structures
Section 13.7. Relational Databases
Section 13.8. Microarrays and XML
Section 13.9. Graphics Programming
Section 13.10. Modeling Networks
Section 13.11. DNA Computers
Appendix A. Resources
Section A.1. Perl
Section A.2. Computer Science
Section A.3. Linux
Section A.4. Bioinformatics
Section A.5. Molecular Biology
Appendix B. Perl Summary
Section B.1. Command Interpretation
Section B.2. Comments
Section B.3. Scalar Values and Scalar Variables
Section B.4. Assignment
Section B.5. Statements and Blocks
Section B.6. Arrays
Section B.7. Hashes
Section B.8. Operators
Section B.9. Operator Precedence
Section B.10. Basic Operators
Section B.11. Conditionals and Logical Operators
Section B.12. Binding Operators
Section B.13. Loops
Section B.14. Input/Output
Section B.15. Regular Expressions
Section B.16. Scalar and List Context
Section B.17. Subroutines and Modules
Section B.18. Built-in Functions
Index