Books & Videos

Table of Contents

  1. Ideology: Data Skills for Robust and Reproducible Bioinformatics

    1. Chapter 1 How to Learn Bioinformatics

      1. Why Bioinformatics? Biology’s Growing Data
      2. Learning Data Skills to Learn Bioinformatics
      3. New Challenges for Reproducible and Robust Research
      4. Reproducible Research
      5. Robust Research and the Golden Rule of Bioinformatics
      6. Adopting Robust and Reproducible Practices Will Make Your Life Easier, Too
      7. Recommendations for Robust Research
      8. Recommendations for Reproducible Research
      9. Continually Improving Your Bioinformatics Data Skills
  2. Prerequisites: Essential Skills for Getting Started with a Bioinformatics Project

    1. Chapter 2 Setting Up and Managing a Bioinformatics Project

      1. Project Directories and Directory Structures
      2. Project Documentation
      3. Use Directories to Divide Up Your Project into Subprojects
      4. Organizing Data to Automate File Processing Tasks
      5. Markdown for Project Notebooks
    2. Chapter 3 Remedial Unix Shell

      1. Why Do We Use Unix in Bioinformatics? Modularity and the Unix Philosophy
      2. Working with Streams and Redirection
      3. The Almighty Unix Pipe: Speed and Beauty in One
      4. Managing and Interacting with Processes
      5. Command Substitution
    3. Chapter 4 Working with Remote Machines

      1. Connecting to Remote Machines with SSH
      2. Quick Authentication with SSH Keys
      3. Maintaining Long-Running Jobs with nohup and tmux
      4. Working with Remote Machines Through Tmux
    4. Chapter 5 Git for Scientists

      1. Why Git Is Necessary in Bioinformatics Projects
      2. Installing Git
      3. Basic Git: Creating Repositories, Tracking Files, and Staging and Committing Changes
      4. Collaborating with Git: Git Remotes, git push, and git pull
      5. Using Git to Make Life Easier: Working with Past Commits
      6. Working with Branches
      7. Continuing Your Git Education
    5. Chapter 6 Bioinformatics Data

      1. Retrieving Bioinformatics Data
      2. Data Integrity
      3. Looking at Differences Between Data
      4. Compressing Data and Working with Compressed Data
      5. Case Study: Reproducibly Downloading Data
  3. Practice: Bioinformatics Data Skills

    1. Chapter 7 Unix Data Tools

      1. Unix Data Tools and the Unix One-Liner Approach: Lessons from Programming Pearls
      2. When to Use the Unix Pipeline Approach and How to Use It Safely
      3. Inspecting and Manipulating Text Data with Unix Tools
      4. Advanced Shell Tricks
      5. The Unix Philosophy Revisited
    2. Chapter 8 A Rapid Introduction to the R Language

      1. Getting Started with R and RStudio
      2. R Language Basics
      3. Working with and Visualizing Data in R
      4. Developing Workflows with R Scripts
      5. Further R Directions and Resources
    3. Chapter 9 Working with Range Data

      1. A Crash Course in Genomic Ranges and Coordinate Systems
      2. An Interactive Introduction to Range Data with GenomicRanges
      3. Working with Ranges Data on the Command Line with BEDTools
    4. Chapter 10 Working with Sequence Data

      1. The FASTA Format
      2. The FASTQ Format
      3. Nucleotide Codes
      4. Base Qualities
      5. Example: Inspecting and Trimming Low-Quality Bases
      6. A FASTA/FASTQ Parsing Example: Counting Nucleotides
      7. Indexed FASTA Files
    5. Chapter 11 Working with Alignment Data

      1. Getting to Know Alignment Formats: SAM and BAM
      2. Command-Line Tools for Working with Alignments in the SAM Format
      3. Visualizing Alignments with samtools tview and the Integrated Genomics Viewer
      4. Creating Your Own SAM/BAM Processing Tools with Pysam
    6. Chapter 12 Bioinformatics Shell Scripting, Writing Pipelines, and Parallelizing Tasks

      1. Basic Bash Scripting
      2. Automating File-Processing with find and xargs
      3. Make and Makefiles: Another Option for Pipelines
    7. Chapter 13 Out-of-Memory Approaches: Tabix and SQLite

      1. Fast Access to Indexed Tab-Delimited Files with BGZF and Tabix
      2. Introducing Relational Databases Through SQLite
    8. Chapter 14 Conclusion

      1. Where to Go From Here?