Methods

Rats were kept in sedentary conditions or were trained. RNA was isolated from whole cardiac tissues ans sent to Macrogen for sequencing.

Fastqc and MultiQC were run to summarise the QC checks that were done.

Reads were then were mapped to the rat genome (Ensembl version 99) with Kallisto then imported to R for analysis with DESeq2. Pathway level analysis was then done using mitch with Reactome gene sets.

Read counts

Import the Kallisto transcript counts. We can also include some info out of the Ensembl GTF file including gene name and gene class.

# libraries
library("reshape2")
library("DESeq2")
library("mitch")
library("gplots")

# import the 3 column table
tmp<-read.table("3col.tsv.gz",header=F)

# convert the 3 col table into a standard count matrix 
x<-as.matrix(acast(tmp, V2~V1, value.var="V3"))
# tidy up the column headers
colnames(x)<-sapply(strsplit(colnames(x),"_"),"[[",1)
head(x)
##                             1        2        3        4        5        6
## ENSRNOT00000000008.4   0.0000  15.4106   0.0000  27.2368   0.0281  10.3616
## ENSRNOT00000000009.5  14.7119  20.8913  19.6714  22.1082  14.5293   3.3838
## ENSRNOT00000000010.5   2.0000   3.0000   0.0000   2.0000   4.0000   3.0000
## ENSRNOT00000000011.5   4.0000   0.0000   0.0000  11.0000   7.0000  15.0000
## ENSRNOT00000000013.5 530.6630 445.4550 358.2370 576.9690 507.1610 381.8840
## ENSRNOT00000000018.7   5.0000   6.0000   0.0000   0.0000   4.0000   0.0000
##                              7        8        9       10        11        12
## ENSRNOT00000000008.4   5.67987  39.7862  23.0690  21.2870   0.00000   0.00000
## ENSRNOT00000000009.5  27.40780  16.3483  16.9056  13.0002   6.72661   9.20012
## ENSRNOT00000000010.5   0.00000   3.0000   0.0000   9.0000   2.00000   0.00000
## ENSRNOT00000000011.5   9.00000   8.0000  12.0000   0.0000   4.00000   6.00000
## ENSRNOT00000000013.5 534.89700 607.2480 463.8250 483.4110 613.76100 433.39100
## ENSRNOT00000000018.7   0.00000   3.0000   5.0000   1.0000   0.00000   1.00000
##                            13        14       15       16
## ENSRNOT00000000008.4   0.0000  19.00000  27.1574   0.0000
## ENSRNOT00000000009.5  10.8224   7.89748  11.1867  11.7551
## ENSRNOT00000000010.5   1.0000   1.00000   0.0000   2.0000
## ENSRNOT00000000011.5   9.0000   2.00000   9.0000   3.0000
## ENSRNOT00000000013.5 432.0940 427.33000 543.8830 434.8460
## ENSRNOT00000000018.7   1.0000   1.00000   0.0000   1.0000
#dont forget gene names
g<-read.table("../ref/Rattus_norvegicus.Rnor_6.0.cdna+ncrna.gene_names.tsv",row.names=1)
g$gene_ID <- paste(g$V2,g$V3,g$V4)
head(g)
##                      V2                   V3      V4
## ENSRNOT00000047550.4 MT ENSRNOG00000030644.4  Mt-nd1
## ENSRNOT00000040993.4 MT ENSRNOG00000031033.4  Mt-nd2
## ENSRNOT00000050156.3 MT ENSRNOG00000034234.3  Mt-co1
## ENSRNOT00000043693.3 MT ENSRNOG00000030371.3  Mt-co2
## ENSRNOT00000046201.3 MT ENSRNOG00000033299.3 Mt-atp8
## ENSRNOT00000046108.3 MT ENSRNOG00000031979.3 Mt-atp6
##                                              gene_ID
## ENSRNOT00000047550.4  MT ENSRNOG00000030644.4 Mt-nd1
## ENSRNOT00000040993.4  MT ENSRNOG00000031033.4 Mt-nd2
## ENSRNOT00000050156.3  MT ENSRNOG00000034234.3 Mt-co1
## ENSRNOT00000043693.3  MT ENSRNOG00000030371.3 Mt-co2
## ENSRNOT00000046201.3 MT ENSRNOG00000033299.3 Mt-atp8
## ENSRNOT00000046108.3 MT ENSRNOG00000031979.3 Mt-atp6
g[,1:3]=NULL
x<-merge(g,x,by=0)
rownames(x) <- x[,1]
x[,1]=NULL
# aggregate Tx data to genes
xx <- aggregate(. ~ gene_ID,x,sum)
# now round to integers so that DESeq2 doesn't fail
rownames(xx) <- xx[,1]
xx[,1]=NULL
x <- round(xx)
head(x)
##                                        1    2    3    4    5    6    7    8
## 1 ENSRNOG00000000417.7 Numa1        5138 7295 4700 5957 7371 4460 6152 7405
## 1 ENSRNOG00000001466.6 LOC100361492    0    0    0    0    0    0    0    4
## 1 ENSRNOG00000001488.6 Psmb1        7439 6405 4778 7201 6766 5830 7015 7392
## 1 ENSRNOG00000001489.5 Tbp           532  465  304  398  420  358  439  460
## 1 ENSRNOG00000001490.4 Pdcd2         513  515  375  541  518  441  556  610
## 1 ENSRNOG00000001492.7 Slc8a2        864 1075  922  966  948  640  852  954
##                                        9   10   11   12   13   14   15   16
## 1 ENSRNOG00000000417.7 Numa1        5746 5402 5825 5609 5861 5221 5501 5653
## 1 ENSRNOG00000001466.6 LOC100361492    0    0    0    0    0    0    0    0
## 1 ENSRNOG00000001488.6 Psmb1        7930 6160 7579 6787 6854 6943 7344 6261
## 1 ENSRNOG00000001489.5 Tbp           359  426  388  356  463  388  438  425
## 1 ENSRNOG00000001490.4 Pdcd2         524  436  517  511  437  491  623  516
## 1 ENSRNOG00000001492.7 Slc8a2        882  888  931  885  899  731  791  932

Samplesheet

samplesheet <- read.table("samplesheet.tsv",header=TRUE)

Overall clustering with multidimensional scaling

This indicates that there is no clear clustering of samples by treatment group.

ss <- samplesheet
colours = c('pink', 'lightblue','lightgreen','gray')
mds <- cmdscale(dist(t(x)))
XMAX=max(mds[,1])*1.1
XMIN=min(mds[,1])*1.1
plot( mds*1.05 , cex=2, pch=19, xlab="Coordinate 1", ylab="Coordinate 2",
  col = colours[as.factor(ss$Group)] ,  type = "p" ,
  xlim=c(XMIN,XMAX),main="MDS plot",bty="n")
text(mds, labels=colnames(x) )
legend('topright', col=colours, legend=levels(as.factor(ss$Group)), pch = 16, cex = 1)

Number of reads is 60 to 80 M reads which is really comprehensive.

par(mar=c(5,10,5,3))
barplot(colSums(x),horiz=TRUE,las=2,main="number of reads per sample",cex.names=1)

par(mai=c(1.02,0.82,0.82,0.42))

Check purity of mito fraction samples

Here I'm quantifying the mitochondrial read fraction. That is the number of mt reads divided by the total number of reads. There is no significant difference between groups. The mito frac is slightly larger here as compared to the skeletal muscle.

par(mar=c(5,10,5,3))
mtfrac <-  colSums(x[grep("^MT",rownames(x)),]) / colSums(x) 
barplot(mtfrac,horiz=TRUE,las=2,main="Proportion mitochondrial reads",cex.names=1)

par(mai=c(1.02,0.82,0.82,0.42))

mylevels <- levels(as.factor(ss$Group))
mylevels
## [1] "S" "T"
y <- x[,which(ss$Group==mylevels[1])]
wholeS <- colSums(y[grep("^MT",rownames(y)),]) / colSums(y)
y <- x[,which(ss$Group==mylevels[2])] 
wholeT <- colSums(y[grep("^MT",rownames(y)),]) / colSums(y)

boxplot(wholeS,wholeT,names=mylevels,ylab="mito frac")

t.test(wholeS,wholeT)
## 
##  Welch Two Sample t-test
## 
## data:  wholeS and wholeT
## t = 0.066164, df = 13.806, p-value = 0.9482
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -0.03314957  0.03525704
## sample estimates:
## mean of x mean of y 
## 0.4467534 0.4456996

Functions

run_de <- function(ss,xx){

y <- round(xx)

# MDS
colours = c('yellow', 'orange')
mds <- cmdscale(dist(t(y)))
XMAX=max(mds[,1])*1.1
XMIN=min(mds[,1])*1.1
plot( mds*1.05 , cex=2 , pch=19, xlab="Coordinate 1", ylab="Coordinate 2",
  col = colours[as.factor(ss$trt)] ,  type = "p" , 
  xlim=c(XMIN,XMAX),main="MDS plot",bty="n")
text(mds, labels=colnames(y) )
legend('topright', col=colours, legend=c("ctrl","trt"), pch = 16, cex = 1.5)

# DE
dds <- DESeqDataSetFromMatrix(countData=y, colData = ss, design = ~ trt)
dds <- DESeq(dds)
de <- DESeq2::results(dds)
de <- de[order(de$pvalue),]
up <- rownames(subset(de, log2FoldChange>0 & padj<0.05 ))
dn <- rownames(subset(de, log2FoldChange<0 & padj<0.05 ))
str(up)
str(dn)

# MA plot
sig <-subset(de, padj < 0.05 )
GENESUP <- length(up)
GENESDN <- length(dn)
SUBHEADER = paste(GENESUP, "up, ", GENESDN, "down")
ns <-subset(de, padj > 0.05 )
plot(log2(de$baseMean),de$log2FoldChange,
     xlab="log2 basemean", ylab="log2 foldchange",
     pch=19, cex=0.5, col="dark gray",
     main="smear plot")
points(log2(sig$baseMean),sig$log2FoldChange,
       pch=19, cex=0.5, col="red")
mtext(SUBHEADER)

# heatmap
yn <- y/colSums(y)*1000000
yf <- yn[which(rownames(yn) %in% rownames(de)[1:50]),]
mycols <- gsub("0","yellow",ss$trt)
mycols <- gsub("1","orange",mycols)
colfunc <- colorRampPalette(c("blue", "white", "red"))
heatmap.2(  as.matrix(yf), col=colfunc(25),scale="row",
    ColSideColors =mycols ,trace="none",
    margin = c(10,15), cexRow=0.6, cexCol=0.8 , main="Top 50 genes by p-val")
mtext("yellow=ctrl, orange=trt")

return(de)
}

Set up contrasts and perform DE analysis

There is just 1 contrast: Whole tissue S versus T

We are using DESeq2 to perform differential expression analysis for the specified contrasts. The run_de function does the analysis and generate the charts. Here we actually run the analysis.

Here I show there are no individual genes with a statistically significant difference between groups.

ss$trt <- as.numeric(as.factor(ss$Group))-1
ss
##    rat_ID Macrogen_ID Group trt
## 1      10           1     T   1
## 2      14           2     T   1
## 3      15           3     S   0
## 4      16           4     S   0
## 5      17           5     T   1
## 6      18           6     T   1
## 7      19           7     S   0
## 8      20           8     S   0
## 9      25           9     T   1
## 10     26          10     T   1
## 11     27          11     T   1
## 12     28          12     T   1
## 13     29          13     S   0
## 14     30          14     S   0
## 15     31          15     S   0
## 16     32          16     S   0
de1 <- run_de(ss,x)
## converting counts to integer mode
##   the design formula contains one or more numeric variables with integer values,
##   specifying a model with increasing fold change for higher values.
##   did you mean for this to be a factor? if so, first convert
##   this variable to a factor using the factor() function
## estimating size factors
## estimating dispersions
## gene-wise dispersion estimates
## mean-dispersion relationship
## final dispersion estimates
## fitting model and testing
## -- replacing outliers and refitting for 318 genes
## -- DESeq argument 'minReplicatesForReplace' = 7 
## -- original counts are preserved in counts(dds)
## estimating dispersions
## fitting model and testing

##  chr(0) 
##  chr(0)

as.data.frame(de1[1:20,])
##                                           baseMean log2FoldChange      lfcSE
## 1 ENSRNOG00000015159.5 Slc9a3           494.793935      0.6049250 0.13481430
## 9 ENSRNOG00000050669.2 LOC100911515     185.462196     -0.4447389 0.10143027
## 4 ENSRNOG00000030870.1 LOC102550396    1309.219092     -0.2344309 0.05698012
## 5 ENSRNOG00000049272.2 AABR07048303.1   147.229842     -0.9886772 0.24305854
## 16 ENSRNOG00000018233.6 Gas6          15552.691397      0.1440238 0.03653203
## X ENSRNOG00000059506.1 AC124926.2      2261.195338     -0.1982355 0.05029631
## 15 ENSRNOG00000035649.1 Mir92a1           2.515525      3.9934257 1.02518327
## 7 ENSRNOG00000042496.4 Cyp4f5           660.889516      0.2223138 0.05730230
## 13 ENSRNOG00000007887.6 Elk4           4502.746382     -0.1263282 0.03352866
## 7 ENSRNOG00000053692.1 AABR07058706.1     3.658260      3.1178459 0.83951580
## 12 ENSRNOG00000001099.7 Rbak            424.871437     -0.2419566 0.06523409
## X ENSRNOG00000060289.1 7SK            19011.363609     -0.4514183 0.12198723
## 1 ENSRNOG00000021017.4 Ca11             502.539670      0.2541628 0.06941464
## 16 ENSRNOG00000032297.2 Msmo1           728.556765     -0.2417691 0.06605013
## 4 ENSRNOG00000012337.7 Pde1c            129.468152     -0.4773449 0.13064519
## 13 ENSRNOG00000030481.2 LOC100362110     83.721720     -0.5847814 0.16076500
## 7 ENSRNOG00000007934.4 Elfn2             49.425186      0.9108554 0.25065659
## 1 ENSRNOG00000015085.8 Dmpk           14917.503531      0.1667698 0.04605139
## 3 ENSRNOG00000008534.8 Dusp15           468.208933      0.9207670 0.25881554
## 10 ENSRNOG00000004159.5 Flii           7983.953424      0.1340516 0.03829426
##                                            stat       pvalue      padj
## 1 ENSRNOG00000015159.5 Slc9a3          4.487098 7.219987e-06 0.1528416
## 9 ENSRNOG00000050669.2 LOC100911515   -4.384676 1.161587e-05 0.1528416
## 4 ENSRNOG00000030870.1 LOC102550396   -4.114258 3.884267e-05 0.3124335
## 5 ENSRNOG00000049272.2 AABR07048303.1 -4.067651 4.748952e-05 0.3124335
## 16 ENSRNOG00000018233.6 Gas6           3.942397 8.067136e-05 0.3440807
## X ENSRNOG00000059506.1 AC124926.2     -3.941353 8.102332e-05 0.3440807
## 15 ENSRNOG00000035649.1 Mir92a1        3.895329 9.806570e-05 0.3440807
## 7 ENSRNOG00000042496.4 Cyp4f5          3.879667 1.045997e-04 0.3440807
## 13 ENSRNOG00000007887.6 Elk4          -3.767768 1.647139e-04 0.4284108
## 7 ENSRNOG00000053692.1 AABR07058706.1  3.713862 2.041201e-04 0.4284108
## 12 ENSRNOG00000001099.7 Rbak          -3.709052 2.080366e-04 0.4284108
## X ENSRNOG00000060289.1 7SK            -3.700537 2.151435e-04 0.4284108
## 1 ENSRNOG00000021017.4 Ca11            3.661516 2.507271e-04 0.4284108
## 16 ENSRNOG00000032297.2 Msmo1         -3.660388 2.518340e-04 0.4284108
## 4 ENSRNOG00000012337.7 Pde1c          -3.653750 2.584380e-04 0.4284108
## 13 ENSRNOG00000030481.2 LOC100362110  -3.637492 2.753060e-04 0.4284108
## 7 ENSRNOG00000007934.4 Elfn2           3.633878 2.791934e-04 0.4284108
## 1 ENSRNOG00000015085.8 Dmpk            3.621384 2.930307e-04 0.4284108
## 3 ENSRNOG00000008534.8 Dusp15          3.557619 3.742322e-04 0.5183313
## 10 ENSRNOG00000004159.5 Flii           3.500566 4.642708e-04 0.6108875
write.table(de1,file="heart1.tsv",quote=FALSE,sep="\t")

Pathway analysis with mitch

Here we are doing a gene set analysis with my R package called mitch. I'm using gene sets downloaded from Reactome 5th Dec 2020.

We lost 46% of genes after converting from rat to human.

There were 259 differentially regulated gene sets (FDR<0.05). Of these 81 were downregulated and 178 were upregulated.

#download.file("https://reactome.org/download/current/ReactomePathways.gmt.zip",
#    destfile="ReactomePathways.gmt.zip")
#unzip("ReactomePathways.gmt.zip")
genesets<-gmt_import("ReactomePathways.gmt")

# i need to get some data from biomart to link rat and human gene IDs

mart <- read.table("mart_export.txt",header=TRUE,sep="\t")
gt <- mart[,c("Gene.stable.ID","Human.gene.name")]

rownames(de1) <- sapply( strsplit(rownames(de1)," ") , "[[", 2) 
rownames(de1) <- sapply( strsplit(rownames(de1),"\\.") , "[[", 1)

m <- mitch_import(as.data.frame(de1),"DESeq2",geneTable=gt)
## The input is a single dataframe; one contrast only. Converting
##         it to a list for you.
## Note: Mean no. genes in input = 32852
## Note: no. genes in output = 17707
## Note: estimated proportion of input genes in output = 0.539
res<-mitch_calc(m,genesets,priority="significance")
## Note: When prioritising by significance (ie: small
##             p-values), large effect sizes might be missed.
nrow(subset(res$enrichment_result,p.adjustANOVA<0.05))
## [1] 259
head(res$enrichment_result,20)
##                                                                              set
## 710                                         Mitochondrial translation elongation
## 709                                                    Mitochondrial translation
## 712                                        Mitochondrial translation termination
## 1343                                                                 Translation
## 711                                         Mitochondrial translation initiation
## 1303              The citric acid (TCA) cycle and respiratory electron transport
## 664                                                               Macroautophagy
## 103                                                                    Autophagy
## 925                                                         Protein localization
## 688                                                       Metabolism of proteins
## 272                                        Defective CFTR causes cystic fibrosis
## 2                                                      ABC transporter disorders
## 673                                                                   Metabolism
## 1070                                              Respiratory electron transport
## 1127                                                         Selective autophagy
## 4                                         ABC-family proteins mediated transport
## 534  Hh mutants that don't undergo autocatalytic processing are degraded by ERAD
## 533                                         Hh mutants abrogate ligand secretion
## 587                                                      Interleukin-1 signaling
## 1440                                                         tRNA Aminoacylation
##      setSize       pANOVA     s.dist p.adjustANOVA
## 710       85 6.412365e-21 0.58831140  7.057158e-18
## 709       91 9.760938e-21 0.56599894  7.057158e-18
## 712       85 3.676449e-20 0.57668556  1.772048e-17
## 1343     263 2.856601e-19 0.32154301  1.032661e-16
## 711       85 7.749816e-19 0.55581726  2.241247e-16
## 1303     165 3.558952e-13 0.32813473  8.577073e-11
## 664      108 3.979599e-12 0.38638454  8.220714e-10
## 103      122 1.977157e-11 0.35163259  3.573712e-09
## 925      156 4.445177e-11 0.30573464  7.141918e-09
## 688     1810 1.061367e-10 0.09244512  1.534737e-08
## 272       58 2.329892e-09 0.45335576  3.062749e-07
## 2         74 3.619245e-09 0.39669324  4.361191e-07
## 673     1943 4.823253e-09 0.08121814  5.364942e-07
## 1070      96 5.355341e-09 0.34466858  5.531302e-07
## 1127      56 1.248351e-08 0.43974947  1.195550e-06
## 4         97 1.322877e-08 0.33393573  1.195550e-06
## 534       53 2.632772e-08 0.44177385  2.239405e-06
## 533       56 3.100625e-08 0.42760730  2.490835e-06
## 587       94 4.172970e-08 0.32728425  3.175850e-06
## 1440      42 5.935994e-08 0.48332322  4.240588e-06
mitch_barplot <- function(res){
  sig <- head(subset(res$enrichment_result,p.adjustANOVA<0.05),30)
  sig <- sig[order(sig$s.dist),]
  par(mar=c(3,25,1,1)); barplot(sig$s.dist,horiz=TRUE,las=2,cex.names = 0.6,cex.axis = 0.6,
    names.arg=sig$set,main="Enrichment score") ;grid()
}

mitch_barplot(res)

nrow(subset(res$enrichment_result,p.adjustANOVA<0.05&s.dist<0))
## [1] 81
nrow(subset(res$enrichment_result,p.adjustANOVA<0.05&s.dist>0))
## [1] 178
unlink("heart_mitch1.html")
mitch_report(res,outfile="heart_mitch1.html")
## Dataset saved as " /tmp/RtmpU1aNQ3/heart_mitch1.rds ".
## 
## 
## processing file: mitch.Rmd
## 
  |                                                                            
  |                                                                      |   0%
  |                                                                            
  |..                                                                    |   3%
##    inline R code fragments
## 
## 
  |                                                                            
  |....                                                                  |   6%
## label: checklibraries (with options) 
## List of 1
##  $ echo: logi FALSE
## 
## 
  |                                                                            
  |......                                                                |   9%
##   ordinary text without R code
## 
## 
  |                                                                            
  |........                                                              |  12%
## label: peek (with options) 
## List of 1
##  $ echo: logi FALSE
## 
## 
  |                                                                            
  |..........                                                            |  15%
##   ordinary text without R code
## 
## 
  |                                                                            
  |............                                                          |  18%
## label: metrics (with options) 
## List of 1
##  $ echo: logi FALSE
## 
## 
  |                                                                            
  |..............                                                        |  21%
##   ordinary text without R code
## 
## 
  |                                                                            
  |................                                                      |  24%
## label: scatterplot (with options) 
## List of 5
##  $ echo      : logi FALSE
##  $ fig.height: num 6
##  $ fig.width : num 6.5
##  $ message   : logi FALSE
##  $ warning   : logi FALSE
## 
  |                                                                            
  |...................                                                   |  26%
##   ordinary text without R code
## 
## 
  |                                                                            
  |.....................                                                 |  29%
## label: contourplot (with options) 
## List of 5
##  $ echo      : logi FALSE
##  $ fig.height: num 6
##  $ fig.width : num 6.5
##  $ warning   : logi FALSE
##  $ message   : logi FALSE
## Contour plot does not apply to unidimensional analysis.
## 
  |                                                                            
  |.......................                                               |  32%
##   ordinary text without R code
## 
## 
  |                                                                            
  |.........................                                             |  35%
## label: input_geneset_metrics1 (with options) 
## List of 2
##  $ results: chr "asis"
##  $ echo   : logi FALSE
## 
## 
  |                                                                            
  |...........................                                           |  38%
##   ordinary text without R code
## 
## 
  |                                                                            
  |.............................                                         |  41%
## label: input_geneset_metrics2 (with options) 
## List of 5
##  $ results   : chr "asis"
##  $ echo      : logi FALSE
##  $ fig.height: num 7
##  $ fig.width : num 7
##  $ fig.show  : chr "all"
## 
  |                                                                            
  |...............................                                       |  44%
##   ordinary text without R code
## 
## 
  |                                                                            
  |.................................                                     |  47%
## label: input_geneset_metrics3 (with options) 
## List of 5
##  $ results   : chr "asis"
##  $ echo      : logi FALSE
##  $ message   : logi FALSE
##  $ fig.height: num 7
##  $ fig.width : num 7
## 
  |                                                                            
  |...................................                                   |  50%
##   ordinary text without R code
## 
## 
  |                                                                            
  |.....................................                                 |  53%
## label: echart1d (with options) 
## List of 6
##  $ results   : chr "asis"
##  $ echo      : logi FALSE
##  $ fig.height: num 7
##  $ fig.width : num 7
##  $ fig.show  : chr "all"
##  $ message   : logi FALSE
## 
## 
  |                                                                            
  |.......................................                               |  56%
## label: echart2d (with options) 
## List of 6
##  $ results   : chr "asis"
##  $ echo      : logi FALSE
##  $ fig.height: num 7
##  $ fig.width : num 7
##  $ fig.show  : chr "all"
##  $ message   : logi FALSE
## 
## 
  |                                                                            
  |.........................................                             |  59%
##   ordinary text without R code
## 
## 
  |                                                                            
  |...........................................                           |  62%
## label: heatmap (with options) 
## List of 6
##  $ results   : chr "asis"
##  $ echo      : logi FALSE
##  $ fig.height: num 10
##  $ fig.width : num 7
##  $ fig.show  : chr "all"
##  $ message   : logi FALSE
## 
## 
  |                                                                            
  |.............................................                         |  65%
##   ordinary text without R code
## 
## 
  |                                                                            
  |...............................................                       |  68%
## label: effectsize (with options) 
## List of 6
##  $ results   : chr "asis"
##  $ echo      : logi FALSE
##  $ fig.height: num 7
##  $ fig.width : num 7
##  $ fig.show  : chr "all"
##  $ message   : logi FALSE
## 
## 
  |                                                                            
  |.................................................                     |  71%
##   ordinary text without R code
## 
## 
  |                                                                            
  |...................................................                   |  74%
## label: results_table (with options) 
## List of 2
##  $ results: chr "asis"
##  $ echo   : logi FALSE
## 
## 
  |                                                                            
  |......................................................                |  76%
##   ordinary text without R code
## 
## 
  |                                                                            
  |........................................................              |  79%
## label: results_table_complete (with options) 
## List of 2
##  $ results: chr "asis"
##  $ echo   : logi FALSE
## 
## 
  |                                                                            
  |..........................................................            |  82%
##   ordinary text without R code
## 
## 
  |                                                                            
  |............................................................          |  85%
## label: detailed_geneset_reports1d (with options) 
## List of 7
##  $ results   : chr "asis"
##  $ echo      : logi FALSE
##  $ fig.height: num 6
##  $ fig.width : num 6
##  $ out.width : chr "80%"
##  $ comment   : logi NA
##  $ message   : logi FALSE
## 
  |                                                                            
  |..............................................................        |  88%
##   ordinary text without R code
## 
## 
  |                                                                            
  |................................................................      |  91%
## label: detailed_geneset_reports2d (with options) 
## List of 7
##  $ results   : chr "asis"
##  $ echo      : logi FALSE
##  $ fig.height: num 5
##  $ fig.width : num 6
##  $ out.width : chr "80%"
##  $ comment   : logi NA
##  $ message   : logi FALSE
## 
## 
  |                                                                            
  |..................................................................    |  94%
##   ordinary text without R code
## 
## 
  |                                                                            
  |....................................................................  |  97%
## label: session_info (with options) 
## List of 3
##  $ include: logi TRUE
##  $ echo   : logi TRUE
##  $ results: chr "markup"
## 
## 
  |                                                                            
  |......................................................................| 100%
##   ordinary text without R code
## output file: /mnt/bfx6/bfx/adam_trewin/set3/mitch.knit.md
## /usr/bin/pandoc +RTS -K512m -RTS /mnt/bfx6/bfx/adam_trewin/set3/mitch.utf8.md --to html4 --from markdown+autolink_bare_uris+tex_math_single_backslash --output /tmp/RtmpU1aNQ3/mitch_report.html --email-obfuscation none --self-contained --standalone --section-divs --template /usr/local/lib/R/site-library/rmarkdown/rmd/h/default.html --no-highlight --variable highlightjs=1 --variable 'theme:bootstrap' --include-in-header /tmp/RtmpU1aNQ3/rmarkdown-str4b464efb824d.html --mathjax --variable 'mathjax-url:https://mathjax.rstudio.com/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'
## 
## Output created: /tmp/RtmpU1aNQ3/mitch_report.html
## [1] TRUE

Session info

sessionInfo()
## R version 4.0.3 (2020-10-10)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 18.04.5 LTS
## 
## Matrix products: default
## BLAS:   /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
## LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
##  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
##  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
## 
## attached base packages:
## [1] parallel  stats4    stats     graphics  grDevices utils     datasets 
## [8] methods   base     
## 
## other attached packages:
##  [1] pkgload_1.1.0               GGally_2.0.0               
##  [3] ggplot2_3.3.2               beeswarm_0.2.3             
##  [5] gtools_3.8.2                tibble_3.0.4               
##  [7] dplyr_1.0.2                 echarts4r_0.3.3            
##  [9] gplots_3.1.0                mitch_1.2.2                
## [11] DESeq2_1.30.0               SummarizedExperiment_1.20.0
## [13] Biobase_2.50.0              MatrixGenerics_1.2.0       
## [15] matrixStats_0.57.0          GenomicRanges_1.42.0       
## [17] GenomeInfoDb_1.26.0         IRanges_2.24.0             
## [19] S4Vectors_0.28.0            BiocGenerics_0.36.0        
## [21] reshape2_1.4.4             
## 
## loaded via a namespace (and not attached):
##  [1] httr_1.4.2             jsonlite_1.7.1         bit64_4.0.5           
##  [4] splines_4.0.3          assertthat_0.2.1       shiny_1.5.0           
##  [7] highr_0.8              blob_1.2.1             GenomeInfoDbData_1.2.4
## [10] yaml_2.2.1             backports_1.2.0        pillar_1.4.6          
## [13] RSQLite_2.2.1          lattice_0.20-41        glue_1.4.2            
## [16] digest_0.6.27          RColorBrewer_1.1-2     promises_1.1.1        
## [19] XVector_0.30.0         colorspace_2.0-0       htmltools_0.5.0       
## [22] httpuv_1.5.4           Matrix_1.2-18          plyr_1.8.6            
## [25] XML_3.99-0.5           pkgconfig_2.0.3        genefilter_1.72.0     
## [28] zlibbioc_1.36.0        purrr_0.3.4            xtable_1.8-4          
## [31] scales_1.1.1           later_1.1.0.1          BiocParallel_1.24.1   
## [34] annotate_1.68.0        generics_0.1.0         ellipsis_0.3.1        
## [37] withr_2.3.0            survival_3.2-7         magrittr_1.5          
## [40] crayon_1.3.4           mime_0.9               evaluate_0.14         
## [43] memoise_1.1.0          MASS_7.3-53            tools_4.0.3           
## [46] lifecycle_0.2.0        stringr_1.4.0          munsell_0.5.0         
## [49] locfit_1.5-9.4         DelayedArray_0.16.0    AnnotationDbi_1.52.0  
## [52] compiler_4.0.3         caTools_1.18.0         rlang_0.4.8           
## [55] grid_4.0.3             RCurl_1.98-1.2         htmlwidgets_1.5.2     
## [58] rmarkdown_2.5          bitops_1.0-6           testthat_3.0.0        
## [61] gtable_0.3.0           DBI_1.1.0              reshape_0.8.8         
## [64] R6_2.5.0               gridExtra_2.3          knitr_1.30            
## [67] fastmap_1.0.1          bit_4.0.4              rprojroot_1.3-2       
## [70] desc_1.2.0             KernSmooth_2.23-18     stringi_1.5.3         
## [73] Rcpp_1.0.5             vctrs_0.3.4            geneplotter_1.68.0    
## [76] tidyselect_1.1.0       xfun_0.19