Book Image

R Bioinformatics Cookbook - Second Edition

By : Dan MacLean
Book Image

R Bioinformatics Cookbook - Second Edition

By: Dan MacLean

Overview of this book

The updated second edition of R Bioinformatics Cookbook takes a recipe-based approach to show you how to conduct practical research and analysis in computational biology with R. You’ll learn how to create a useful and modular R working environment, along with loading, cleaning, and analyzing data using the most up-to-date Bioconductor, ggplot2, and tidyverse tools. This book will walk you through the Bioconductor tools necessary for you to understand and carry out protocols in RNA-seq and ChIP-seq, phylogenetics, genomics, gene search, gene annotation, statistical analysis, and sequence analysis. As you advance, you'll find out how to use Quarto to create data-rich reports, presentations, and websites, as well as get a clear understanding of how machine learning techniques can be applied in the bioinformatics domain. The concluding chapters will help you develop proficiency in key skills, such as gene annotation analysis and functional programming in purrr and base R. Finally, you'll discover how to use the latest AI tools, including ChatGPT, to generate, edit, and understand R code and draft workflows for complex analyses. By the end of this book, you'll have gained a solid understanding of the skills and techniques needed to become a bioinformatics specialist and efficiently work with large and complex bioinformatics datasets.
Table of Contents (16 chapters)

Using the apply family of functions

Programming in R can sometimes seem a bit tricky; indeed, most of us first use R in a very non-programmatic way at the console, invoking commands but not often using flow control or process logic to make dynamic decisions. The control flow and loop structures that it has initially seem a bit basic and underpowered. Many R functions are vectorized (i.e., they operate on collections); the language takes advantage of this by providing features ensuring we don’t need to take the low-level approach we may have learned in Python and other places.

Base R provides the apply() functions to assist with common looping tasks. These functions allow you to apply a specified function to elements of an object, such as a matrix, list, or array. apply() applies a function to either rows, columns, or both of a matrix or array. The result is a simplified vector, matrix, or array. lapply() applies a function to each element of a list and returns a list of results...