## Software information and conventions

Package names and inline code and file names are formatted in a typewriter font (e.g. methylKit). Function names are followed by parentheses (e.g. genomation::ScoreMatrix()). The double-colon operator :: means accessing an object from a package.

### Assignment operator convention

Traditionally, <- is the preferred assignment operator. However, throughout the book we use = and <- as the assignment operator interchangeably.

### Packages needed to run the book code

This book is primarily about using R packages to analyze genomics data, therefore if you want to reproduce the analysis in this book you need to install the relevant packages in each chapter using install.packages or BiocManager::install functions. In each chapter, we load the necessary packages with the library() or require() function when we use the needed functions from respective packages. By looking at calls, you can see which packages are needed for that code chunk or chapter. If you need to install all the package dependencies for the book, you can run the following command and have a cup of tea while waiting.

if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install(c('qvalue','plot3D','ggplot2','pheatmap','cowplot',
'cluster', 'NbClust', 'fastICA', 'NMF','matrixStats',
'Rtsne', 'mosaic', 'knitr', 'genomation',
'ggbio', 'Gviz', 'DESeq2', 'RUVSeq',
'gProfileR', 'ggfortify', 'corrplot',
'gage', 'EDASeq', 'citr', 'formatR',
'methylKit','FactoMineR', 'iClusterPlus',
'enrichR','caret','xgboost','glmnet',
'DALEX','kernlab','pROC','nnet','RANN',
'ranger','GenomeInfoDb', 'GenomicRanges',
'GenomicAlignments', 'ComplexHeatmap', 'circlize',
'rtracklayer', 'BSgenome.Hsapiens.UCSC.hg38',
'BSgenome.Hsapiens.UCSC.hg19','tidyr',
'AnnotationHub', 'GenomicFeatures', 'normr',
))