Rats were kept in sedentary conditions or were trained. RNA was isolated from whole cell and mito fractions. Libraries were generated by the Deakin Genomics Facility and sequenced on the NovaSeq system.
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.
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")
library("kableExtra")
library("beeswarm")
# 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 10 11 12 13 14 15 16 17 18 19 2 20 21 22
## ENSRNOG00000000001 7 12 3 7 9 5 4 7 30 5 5 4 5 7 6
## ENSRNOG00000000007 8 5 10 6 12 2 6 3 9 8 19 7 5 21 5
## ENSRNOG00000000008 6 46 46 16 25 44 39 23 73 35 54 21 30 64 11
## ENSRNOG00000000009 1 1 0 0 0 1 0 0 0 0 0 0 0 2 0
## ENSRNOG00000000010 0 0 1 1 0 1 0 1 1 0 1 4 2 1 6
## ENSRNOG00000000012 280 679 336 529 703 446 307 349 376 481 501 325 319 906 598
## 23 24 25 26 27 28 29 3 30 31 32 33 34 35 36 37
## ENSRNOG00000000001 8 11 10 4 13 7 8 8 5 5 11 7 8 22 9 10
## ENSRNOG00000000007 8 2 12 5 11 10 5 8 9 9 6 35 21 44 37 39
## ENSRNOG00000000008 38 14 35 44 62 29 31 32 34 28 22 11 10 17 5 17
## ENSRNOG00000000009 0 0 0 0 0 0 0 0 0 0 0 18 7 20 11 23
## ENSRNOG00000000010 3 3 0 0 0 2 2 1 0 4 0 19 11 21 16 30
## ENSRNOG00000000012 835 635 614 647 865 756 472 491 288 468 289 19 11 10 6 5
## 38 39 4 40 41 42 43 44 45 46 47 48 49 5 50 51 52 53 54
## ENSRNOG00000000001 18 13 9 12 9 7 15 12 16 7 7 16 17 8 11 17 14 12 5
## ENSRNOG00000000007 48 32 6 17 27 17 44 34 43 39 49 31 41 8 51 53 49 35 44
## ENSRNOG00000000008 24 13 18 16 6 8 38 13 15 9 30 6 19 25 16 24 18 14 13
## ENSRNOG00000000009 29 26 0 22 5 8 20 10 22 13 21 7 22 0 27 36 33 22 33
## ENSRNOG00000000010 18 12 0 19 14 12 23 12 18 22 19 12 15 0 24 35 16 24 20
## ENSRNOG00000000012 18 2 249 7 4 6 19 14 13 10 6 11 4 833 15 8 11 10 15
## 55 56 57 58 59 6 60 61 62 63 64 7 8 9 95 96
## ENSRNOG00000000001 7 7 11 17 8 10 17 15 17 17 15 6 10 4 0 0
## ENSRNOG00000000007 30 40 61 41 35 19 39 44 56 54 41 4 3 6 0 0
## ENSRNOG00000000008 25 5 20 11 11 27 22 25 15 18 20 15 14 26 0 0
## ENSRNOG00000000009 24 17 28 15 15 0 10 23 21 26 18 0 0 0 0 0
## ENSRNOG00000000010 23 22 14 26 25 0 24 27 24 28 32 0 2 0 0 0
## ENSRNOG00000000012 6 7 12 8 5 645 10 10 9 10 4 352 269 439 3 33
#dont forget gene names
g<-read.table("../ref2/Rattus_norvegicus.mRatBN7.2.106.gnames.txt",row.names=1)
g$gene_ID <- paste(g$V2,g$V3,g$V4,g$V5)
head(g)
## V2 V3 gene_ID
## ENSRNOG00000066169 na protein_coding na protein_coding
## ENSRNOG00000070168 Olr56 protein_coding Olr56 protein_coding
## ENSRNOG00000070901 Irgq protein_coding Irgq protein_coding
## ENSRNOG00000018029 Doc2g protein_coding Doc2g protein_coding
## ENSRNOG00000031391 Ceacam16 protein_coding Ceacam16 protein_coding
## ENSRNOG00000055342 U7 snRNA U7 snRNA
g <- g[,ncol(g),drop=FALSE]
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 10 11 12 13 14 15 16 17 18 19 2
## 0610030E20Rik protein_coding 101 103 115 125 108 76 79 83 72 106 95 69
## 0610040J01Rik protein_coding 23 59 58 57 42 53 53 48 45 52 54 32
## 1110032F04Rik protein_coding 12 11 18 13 22 8 9 16 13 15 15 4
## 1110038F14Rik protein_coding 183 330 292 403 305 278 235 234 244 260 287 139
## 1110065P20Rik protein_coding 55 82 81 101 78 73 72 59 93 55 55 34
## 1500009L16Rik protein_coding 16 5 14 16 5 10 5 1 9 4 4 6
## 20 21 22 23 24 25 26 27 28 29 3 30
## 0610030E20Rik protein_coding 69 88 85 87 111 165 102 138 132 111 79 81
## 0610040J01Rik protein_coding 56 64 46 41 49 71 43 54 52 48 44 53
## 1110032F04Rik protein_coding 27 17 32 9 32 15 12 19 18 19 9 15
## 1110038F14Rik protein_coding 244 341 205 274 273 203 189 289 284 194 246 237
## 1110065P20Rik protein_coding 93 80 47 74 83 63 76 71 71 37 62 71
## 1500009L16Rik protein_coding 10 16 19 7 15 26 7 22 12 3 7 10
## 31 32 33 34 35 36 37 38 39 4 40 41 42 43 44
## 0610030E20Rik protein_coding 84 45 18 23 18 20 9 18 18 74 10 11 2 23 7
## 0610040J01Rik protein_coding 59 33 14 11 25 12 18 13 9 33 20 12 15 31 10
## 1110032F04Rik protein_coding 13 6 8 11 15 8 9 1 6 10 0 4 7 11 4
## 1110038F14Rik protein_coding 255 159 6 3 10 11 9 14 4 196 14 2 7 12 6
## 1110065P20Rik protein_coding 67 48 9 1 10 8 19 10 16 65 6 9 7 18 7
## 1500009L16Rik protein_coding 8 3 9 9 6 2 3 8 3 7 2 8 1 13 7
## 45 46 47 48 49 5 50 51 52 53 54 55 56 57 58 59
## 0610030E20Rik protein_coding 14 14 16 5 15 127 18 36 3 12 20 15 16 7 17 12
## 0610040J01Rik protein_coding 16 17 11 11 26 52 33 36 20 20 25 14 16 15 17 15
## 1110032F04Rik protein_coding 13 6 1 7 4 22 7 3 4 4 4 5 5 4 3 6
## 1110038F14Rik protein_coding 15 13 5 8 8 384 11 18 12 12 15 13 24 11 15 8
## 1110065P20Rik protein_coding 21 15 6 5 5 106 16 20 15 10 12 7 8 3 6 11
## 1500009L16Rik protein_coding 4 7 3 6 8 6 16 7 3 10 10 3 9 12 2 12
## 6 60 61 62 63 64 7 8 9 95 96
## 0610030E20Rik protein_coding 76 8 27 19 22 17 98 76 77 0 0
## 0610040J01Rik protein_coding 51 15 19 24 16 22 65 39 62 0 0
## 1110032F04Rik protein_coding 14 5 7 1 7 0 9 5 5 0 0
## 1110038F14Rik protein_coding 265 15 12 12 8 11 255 128 249 0 0
## 1110065P20Rik protein_coding 67 12 14 16 5 12 57 60 54 0 0
## 1500009L16Rik protein_coding 1 12 14 11 8 4 2 10 5 0 1
write.table(x,file="countmatrix_skeletal.tsv",quote=FALSE,sep="\t")
y <- x/colSums(x)*1000000
write.table(y,file="rpmmatrix_skeletal.tsv",quote=FALSE,sep="\t")
samplesheet <- read.table("samplesheet.tsv",header=TRUE)
samplesheet$UDI <- gsub("UDI_0","",samplesheet$UDI)
samplesheet$UDI <- gsub("UDI_","",samplesheet$UDI)
samplesheet$label <- paste(samplesheet$fraction,samplesheet$Group)
samplesheet <- samplesheet[order(samplesheet$UDI),]
samplesheet %>% kbl() %>% kable_paper("hover", full_width = F)
UDI | fraction | Group | RatID | label | |
---|---|---|---|---|---|
1 | 1 | wholetissue | T | 1 | wholetissue T |
10 | 10 | wholetissue | T | 10 | wholetissue T |
11 | 11 | wholetissue | S | 11 | wholetissue S |
12 | 12 | wholetissue | S | 12 | wholetissue S |
13 | 13 | wholetissue | T | 13 | wholetissue T |
14 | 14 | wholetissue | T | 14 | wholetissue T |
15 | 15 | wholetissue | S | 15 | wholetissue S |
16 | 16 | wholetissue | S | 16 | wholetissue S |
17 | 17 | wholetissue | T | 17 | wholetissue T |
18 | 18 | wholetissue | T | 18 | wholetissue T |
19 | 19 | wholetissue | S | 19 | wholetissue S |
2 | 2 | wholetissue | T | 2 | wholetissue T |
20 | 20 | wholetissue | S | 20 | wholetissue S |
21 | 21 | wholetissue | T | 21 | wholetissue T |
22 | 22 | wholetissue | T | 22 | wholetissue T |
23 | 23 | wholetissue | S | 23 | wholetissue S |
24 | 24 | wholetissue | S | 24 | wholetissue S |
25 | 25 | wholetissue | T | 25 | wholetissue T |
26 | 26 | wholetissue | T | 26 | wholetissue T |
27 | 27 | wholetissue | T | 27 | wholetissue T |
28 | 28 | wholetissue | T | 28 | wholetissue T |
29 | 29 | wholetissue | S | 29 | wholetissue S |
3 | 3 | wholetissue | S | 3 | wholetissue S |
30 | 30 | wholetissue | S | 30 | wholetissue S |
31 | 31 | wholetissue | S | 31 | wholetissue S |
32 | 32 | wholetissue | S | 32 | wholetissue S |
33 | 33 | mito | T | 1 | mito T |
34 | 34 | mito | T | 2 | mito T |
35 | 35 | mito | S | 3 | mito S |
36 | 36 | mito | S | 4 | mito S |
37 | 37 | mito | T | 5 | mito T |
38 | 38 | mito | T | 6 | mito T |
39 | 39 | mito | S | 7 | mito S |
4 | 4 | wholetissue | S | 4 | wholetissue S |
40 | 40 | mito | S | 8 | mito S |
41 | 41 | mito | T | 9 | mito T |
42 | 42 | mito | T | 10 | mito T |
43 | 43 | mito | S | 11 | mito S |
44 | 44 | mito | S | 12 | mito S |
45 | 45 | mito | T | 13 | mito T |
46 | 46 | mito | T | 14 | mito T |
47 | 47 | mito | S | 15 | mito S |
48 | 48 | mito | S | 16 | mito S |
49 | 49 | mito | T | 17 | mito T |
5 | 5 | wholetissue | T | 5 | wholetissue T |
50 | 50 | mito | T | 18 | mito T |
51 | 51 | mito | S | 19 | mito S |
52 | 52 | mito | S | 20 | mito S |
53 | 53 | mito | T | 21 | mito T |
54 | 54 | mito | T | 22 | mito T |
55 | 55 | mito | S | 23 | mito S |
56 | 56 | mito | S | 24 | mito S |
57 | 57 | mito | T | 25 | mito T |
58 | 58 | mito | T | 26 | mito T |
59 | 59 | mito | T | 27 | mito T |
6 | 6 | wholetissue | T | 6 | wholetissue T |
60 | 60 | mito | T | 28 | mito T |
61 | 61 | mito | S | 29 | mito S |
62 | 62 | mito | S | 30 | mito S |
63 | 63 | mito | S | 31 | mito S |
64 | 64 | mito | S | 32 | mito S |
7 | 7 | wholetissue | S | 7 | wholetissue S |
8 | 8 | wholetissue | S | 8 | wholetissue S |
9 | 9 | wholetissue | T | 9 | wholetissue T |
Sample 95 is a HUMAN mito control sample. Sample 96 is a RAT mito control sample. These should be excluded from main results.
ss <- samplesheet
ss <- ss[order(ss$UDI),]
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$label)] , 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$label)), pch = 16, cex = 1)
x <- x[,which(! colnames(x) %in% c("95","96"))]
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$label)] , 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$label)), pch = 16, cex = 1)
ss$nreads<-colSums(x)
par(mar=c(5,10,5,3))
barplot(colSums(x),horiz=TRUE,las=2,main="number of reads per sample",cex.names=0.5)
par(mai=c(1.02,0.82,0.82,0.42))
Here I’m quantifying the mitochondrial read fraction. That is the number of mt reads divided by the total number of reads. We can see that purity is highly variable.
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$label))
mylevels
## [1] "mito S" "mito T" "wholetissue S" "wholetissue T"
y <- x[,which(ss$label==mylevels[1])]
mitoS <- colSums(y[grep("^Mt",rownames(y)),]) / colSums(y)
y <- x[,which(ss$label==mylevels[2])]
mitoT <- colSums(y[grep("^Mt",rownames(y)),]) / colSums(y)
y <- x[,which(ss$label==mylevels[3])]
wholeS <- colSums(y[grep("^Mt",rownames(y)),]) / colSums(y)
y <- x[,which(ss$label==mylevels[4])]
wholeT <- colSums(y[grep("^Mt",rownames(y)),]) / colSums(y)
dat <- list(mitoS,mitoT,wholeS,wholeT)
boxplot(dat,names=mylevels,ylab="mito frac")
median(wholeS)
## [1] 0.06734638
median(wholeT)
## [1] 0.07177643
table(mitoS>0.1)
##
## FALSE TRUE
## 7 9
table(mitoT>0.1)
##
## FALSE TRUE
## 9 7
ss$mtfrac <- mtfrac
ss %>% kbl() %>% kable_paper("hover", full_width = F)
UDI | fraction | Group | RatID | label | nreads | mtfrac | |
---|---|---|---|---|---|---|---|
1 | 1 | wholetissue | T | 1 | wholetissue T | 18837345 | 0.0597046 |
10 | 10 | wholetissue | T | 10 | wholetissue T | 28530246 | 0.0941355 |
11 | 11 | wholetissue | S | 11 | wholetissue S | 24424574 | 0.0843715 |
12 | 12 | wholetissue | S | 12 | wholetissue S | 25587228 | 0.0692547 |
13 | 13 | wholetissue | T | 13 | wholetissue T | 25708781 | 0.0800684 |
14 | 14 | wholetissue | T | 14 | wholetissue T | 23791138 | 0.0882714 |
15 | 15 | wholetissue | S | 15 | wholetissue S | 21212858 | 0.0782500 |
16 | 16 | wholetissue | S | 16 | wholetissue S | 23445499 | 0.0823777 |
17 | 17 | wholetissue | T | 17 | wholetissue T | 25983120 | 0.0583335 |
18 | 18 | wholetissue | T | 18 | wholetissue T | 28395626 | 0.0651295 |
19 | 19 | wholetissue | S | 19 | wholetissue S | 25942366 | 0.0590721 |
2 | 2 | wholetissue | T | 2 | wholetissue T | 16662516 | 0.1077952 |
20 | 20 | wholetissue | S | 20 | wholetissue S | 25890868 | 0.0555620 |
21 | 21 | wholetissue | T | 21 | wholetissue T | 33404626 | 0.0637576 |
22 | 22 | wholetissue | T | 22 | wholetissue T | 23143848 | 0.0608892 |
23 | 23 | wholetissue | S | 23 | wholetissue S | 27554690 | 0.0681218 |
24 | 24 | wholetissue | S | 24 | wholetissue S | 23717416 | 0.0504590 |
25 | 25 | wholetissue | T | 25 | wholetissue T | 28953218 | 0.0687545 |
26 | 26 | wholetissue | T | 26 | wholetissue T | 23386657 | 0.0566054 |
27 | 27 | wholetissue | T | 27 | wholetissue T | 26538846 | 0.0747984 |
28 | 28 | wholetissue | T | 28 | wholetissue T | 26311668 | 0.0639461 |
29 | 29 | wholetissue | S | 29 | wholetissue S | 21082801 | 0.0848503 |
3 | 3 | wholetissue | S | 3 | wholetissue S | 20802912 | 0.0645131 |
30 | 30 | wholetissue | S | 30 | wholetissue S | 21972978 | 0.0664613 |
31 | 31 | wholetissue | S | 31 | wholetissue S | 23183348 | 0.0740419 |
32 | 32 | wholetissue | S | 32 | wholetissue S | 16939215 | 0.0665710 |
33 | 33 | mito | T | 1 | mito T | 5067761 | 0.2172851 |
34 | 34 | mito | T | 2 | mito T | 9474927 | 0.1887520 |
35 | 35 | mito | S | 3 | mito S | 1207913 | 0.1446511 |
36 | 36 | mito | S | 4 | mito S | 981493 | 0.1272235 |
37 | 37 | mito | T | 5 | mito T | 1119147 | 0.1227524 |
38 | 38 | mito | T | 6 | mito T | 683495 | 0.0598000 |
39 | 39 | mito | S | 7 | mito S | 1571807 | 0.1674888 |
4 | 4 | wholetissue | S | 4 | wholetissue S | 21452178 | 0.0616842 |
40 | 40 | mito | S | 8 | mito S | 552568 | 0.0856293 |
41 | 41 | mito | T | 9 | mito T | 435682 | 0.0708912 |
42 | 42 | mito | T | 10 | mito T | 399371 | 0.0568219 |
43 | 43 | mito | S | 11 | mito S | 1392807 | 0.0963034 |
44 | 44 | mito | S | 12 | mito S | 541491 | 0.0713327 |
45 | 45 | mito | T | 13 | mito T | 752464 | 0.0660111 |
46 | 46 | mito | T | 14 | mito T | 889699 | 0.0982860 |
47 | 47 | mito | S | 15 | mito S | 7917856 | 0.1545264 |
48 | 48 | mito | S | 16 | mito S | 1111437 | 0.1224361 |
49 | 49 | mito | T | 17 | mito T | 788973 | 0.0711609 |
5 | 5 | wholetissue | T | 5 | wholetissue T | 26920394 | 0.1025539 |
50 | 50 | mito | T | 18 | mito T | 1047898 | 0.0904945 |
51 | 51 | mito | S | 19 | mito S | 1158187 | 0.0669745 |
52 | 52 | mito | S | 20 | mito S | 2775819 | 0.1124724 |
53 | 53 | mito | T | 21 | mito T | 1377429 | 0.0919474 |
54 | 54 | mito | T | 22 | mito T | 1010427 | 0.0800859 |
55 | 55 | mito | S | 23 | mito S | 658275 | 0.0422468 |
56 | 56 | mito | S | 24 | mito S | 1846426 | 0.0988022 |
57 | 57 | mito | T | 25 | mito T | 1572446 | 0.1144224 |
58 | 58 | mito | T | 26 | mito T | 3484358 | 0.1297674 |
59 | 59 | mito | T | 27 | mito T | 7149256 | 0.1264782 |
6 | 6 | wholetissue | T | 6 | wholetissue T | 22443642 | 0.0780052 |
60 | 60 | mito | T | 28 | mito T | 5622105 | 0.1382450 |
61 | 61 | mito | S | 29 | mito S | 1501174 | 0.1045002 |
62 | 62 | mito | S | 30 | mito S | 1196402 | 0.0987327 |
63 | 63 | mito | S | 31 | mito S | 1232246 | 0.1057613 |
64 | 64 | mito | S | 32 | mito S | 3768466 | 0.1434525 |
7 | 7 | wholetissue | S | 7 | wholetissue S | 21910567 | 0.0794905 |
8 | 8 | wholetissue | S | 8 | wholetissue S | 17831538 | 0.0504743 |
9 | 9 | wholetissue | T | 9 | wholetissue T | 21603726 | 0.0965156 |
mito <- subset(ss,fraction=="mito")
plot(mito$nreads,mito$mtfrac,pch=19,col="lightblue",xlab="No. reads", ylab="mtDNA proportion",cex=3)
text(mito$nreads,mito$mtfrac,labels=mito$RatID)
abline(h=0.1,v=2.5E6,col="red")
plot(mito$nreads,mito$mtfrac,pch=19,col="lightblue",xlab="No. reads", ylab="mtDNA proportion",cex=3)
text(mito$nreads,mito$mtfrac,labels=mito$Group)
abline(h=0.1,v=2.5E6,col="red")
Mito fraction versus whole cell irrespective of training.
First exclude any mito fractions with mt reads less than 10%.
Also exclude mito fractions with less than 3m reads.
Instead of normalising by reads per million, we are normalising by reads per million (mito transcripts).
Then exclude any gene with detection less than 10 reads per sample across all samples. This way we can be sure the genes are real.
This cuts the number of genes down from 20k to 6.9k.
mito <- subset(mito,nreads>2.5e6 & mtfrac > 0.1)
ssm <- ss[which(ss$RatID %in% mito$RatID),]
xm <- x[,which(colnames(x) %in% rownames(ssm))]
xmito <- rbind(xm[grep("Mt-",rownames(xm) ),],xm[grep("Mt_",rownames(xm) ),])
xmnorm <- xm/colSums(xmito)*1e6
xmnorm <- xmnorm[which(apply(xm,1,min)>10),]
dim(xmnorm)
## [1] 6842 16
Now to calculate the mito enrichment factor.
This is defined as the normalised score (mito) / normalised score (whole cell).
This is calculated for each rat and a median enrichment factor is determined.
As anticipated, the list of top candidates includes mitochondrial transcripts, but also others such as protein coding and snRNAs
r1 <- xmnorm$`33`/xmnorm$`1`
r15 <- xmnorm$`47`/xmnorm$`15`
r2 <- xmnorm$`34`/xmnorm$`2`
r26 <- xmnorm$`58`/xmnorm$`26`
r27 <- xmnorm$`59`/xmnorm$`27`
r28 <- xmnorm$`60`/xmnorm$`28`
r32 <- xmnorm$`64`/xmnorm$`32`
xd <- data.frame(r1,r15,r2,r26,r27,r28,r32,row.names=rownames(xmnorm) )
xd$median <- apply(xd,1,median)
xd2 <- merge(xd,xmnorm,by=0)
rownames(xd2) <- xd2[,1] ; xd2[,1] = NULL
xd2 <- xd2[order(-xd2$median),]
head(xd2,30) %>% kbl() %>% kable_paper("hover", full_width = F)
r1 | r15 | r2 | r26 | r27 | r28 | r32 | median | 1 | 15 | 2 | 20 | 26 | 27 | 28 | 32 | 33 | 34 | 47 | 52 | 58 | 59 | 60 | 64 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AY172581.19 Mt_tRNA | 3.556701 | 1.8680200 | 21.4728998 | 11.827068 | 14.5652174 | 11.669903 | 15.885058 | 11.827068 | 10.586514 | 57.158627 | 13.496645 | 33.989958 | 18.082418 | 7.269465 | 10.438186 | 13.627510 | 37.653064 | 289.812100 | 106.773456 | 199.922750 | 213.861982 | 105.881345 | 121.812616 | 216.473780 |
Dnah1 protein_coding | 13.846154 | 3.2359925 | 10.3206726 | 19.454545 | 6.3076923 | 10.352941 | 6.777778 | 10.320673 | 1.740209 | 10.238052 | 2.744518 | 3.018784 | 1.905197 | 3.714230 | 2.070160 | 5.830394 | 24.095202 | 28.325277 | 33.130259 | 28.980321 | 37.064749 | 23.428220 | 21.432244 | 39.517114 |
AY172581.21 Mt_tRNA | 4.577381 | 2.8967938 | 2.5284792 | 7.834043 | 4.6573705 | 4.931159 | 6.664360 | 4.657370 | 57.333090 | 70.377295 | 75.670839 | 42.087542 | 33.570925 | 30.565302 | 59.599581 | 38.686185 | 262.435394 | 191.332144 | 203.868511 | 108.942650 | 262.996055 | 142.353937 | 293.895038 | 257.818659 |
Abca4 pseudogene | 4.476191 | 6.9809013 | 2.4120231 | 3.322581 | 4.9545455 | 4.478261 | 7.047619 | 4.478261 | 7.166636 | 2.940555 | 4.226297 | 9.525987 | 4.428505 | 2.679031 | 4.966632 | 2.811107 | 32.079229 | 10.193926 | 20.527728 | 18.012775 | 14.714065 | 13.273378 | 22.241873 | 19.811610 |
AY172581.22 Mt_tRNA | 4.468966 | 1.0351649 | 5.3553478 | 6.298508 | 2.6887755 | 3.320988 | 4.816754 | 4.468966 | 21.744594 | 69.215913 | 35.485046 | 21.281624 | 20.369664 | 30.701057 | 26.520854 | 85.291388 | 97.175842 | 190.034762 | 71.649882 | 32.449208 | 128.298479 | 82.548250 | 88.075428 | 410.827630 |
Bub1b protein_coding | 2.105263 | 1.1468211 | 4.3995133 | 4.916667 | 2.4444444 | 5.454546 | 4.538462 | 4.399513 | 2.313708 | 4.318810 | 1.472485 | 9.896783 | 2.352444 | 3.622540 | 1.905197 | 1.857115 | 4.870965 | 6.478215 | 4.952903 | 15.698346 | 11.566185 | 8.855098 | 10.391986 | 8.428445 |
Cacna1d protein_coding | 5.277778 | 19.7759493 | 1.0692702 | 5.370370 | 4.1764706 | 2.787234 | 4.346154 | 4.346154 | 2.819485 | 2.619344 | 7.144828 | 3.299180 | 8.342990 | 4.622573 | 4.951665 | 2.634882 | 14.880614 | 7.639752 | 51.800005 | 19.945042 | 44.804944 | 19.306040 | 13.801449 | 11.451602 |
Recql4 protein_coding | 3.812500 | 2.6875075 | 3.7076308 | 3.578947 | 2.6000000 | 1.620690 | 3.333333 | 3.333333 | 1.621466 | 2.192933 | 1.309672 | 6.251725 | 2.849292 | 4.634994 | 3.942783 | 1.264255 | 6.181838 | 4.855779 | 5.893523 | 19.648278 | 10.197465 | 12.050985 | 6.390027 | 4.214183 |
Myo7a protein_coding | 3.300000 | 2.2797950 | 4.3520909 | 3.439024 | 2.2888889 | 2.725000 | 4.714286 | 3.300000 | 4.015867 | 10.920589 | 3.136592 | 8.855098 | 7.101190 | 6.428475 | 4.870965 | 6.046334 | 13.252361 | 13.650736 | 24.896703 | 24.955277 | 24.421166 | 14.714065 | 13.273378 | 28.504148 |
Iqsec3 protein_coding | 2.470588 | 9.5484712 | 1.8327541 | 3.200000 | 2.2800000 | 3.333333 | 5.090909 | 3.200000 | 2.428535 | 1.583063 | 2.591286 | 2.141796 | 8.531710 | 4.900926 | 3.622540 | 1.905197 | 5.999910 | 4.749190 | 15.115836 | 6.826974 | 27.301471 | 11.174111 | 12.075134 | 9.699187 |
Fgfr2 protein_coding | 3.200000 | 5.5928116 | 1.6177228 | 3.611111 | 2.5000000 | 1.681818 | 3.071429 | 3.071429 | 6.698277 | 3.149217 | 3.707995 | 4.214699 | 1.896382 | 2.026832 | 6.892074 | 1.527950 | 21.434485 | 5.998509 | 17.612978 | 8.837272 | 6.848047 | 5.067081 | 11.591215 | 4.692991 |
U1 snRNA | 2.859649 | 4.6548797 | 4.0179610 | 2.312500 | 3.0666667 | 2.559633 | 3.741935 | 3.066667 | 8.142735 | 7.793543 | 5.182572 | 10.708979 | 38.222060 | 11.762222 | 21.936493 | 10.738385 | 23.285365 | 20.823373 | 36.278006 | 39.623221 | 88.388514 | 36.070814 | 56.149373 | 40.182345 |
Sphkap protein_coding | 4.066667 | 4.1210191 | 0.7908867 | 3.000000 | 1.0465116 | 2.937500 | 4.000000 | 3.000000 | 6.698277 | 2.699329 | 8.342990 | 3.942783 | 2.528510 | 4.357689 | 2.506209 | 1.527950 | 27.239658 | 6.598360 | 11.123986 | 5.982153 | 7.585529 | 4.560372 | 7.361988 | 6.111802 |
U6 snRNA | 2.979452 | 2.5276195 | 4.8138591 | 2.389610 | 2.9393939 | 3.094972 | 3.130682 | 2.979452 | 28.621407 | 25.559033 | 13.336382 | 19.285425 | 28.129820 | 35.630185 | 23.961340 | 60.063237 | 85.276109 | 64.199462 | 64.603511 | 83.855885 | 67.219310 | 104.731149 | 74.159677 | 188.038884 |
Kif15 protein_coding | 2.687500 | 5.0243146 | 0.6417070 | 2.840000 | 2.2400000 | 4.052632 | 3.285714 | 2.840000 | 2.285680 | 2.191934 | 6.262275 | 4.283591 | 8.531710 | 4.900926 | 3.823792 | 2.424797 | 6.142765 | 4.018546 | 11.012966 | 10.575116 | 24.230056 | 10.978074 | 15.496422 | 7.967189 |
Trank1 protein_coding | 3.285714 | 4.4332188 | 1.4903715 | 2.270270 | 1.1000000 | 2.840000 | 5.809524 | 2.840000 | 2.999955 | 2.191934 | 3.023167 | 4.685178 | 12.626931 | 9.801852 | 5.031306 | 3.637195 | 9.856995 | 4.505642 | 9.717323 | 10.976703 | 28.666545 | 10.782037 | 14.288908 | 21.130371 |
Arhgef16 protein_coding | 2.538461 | 2.8243130 | 4.6080962 | 3.166667 | 1.6296296 | 2.157895 | 2.823529 | 2.823529 | 1.740209 | 4.095221 | 3.332630 | 3.220036 | 3.117596 | 3.857085 | 2.313708 | 3.670989 | 4.417454 | 15.357078 | 11.566185 | 11.672629 | 9.872386 | 6.285620 | 4.992739 | 10.365145 |
Dnhd1 protein_coding | 2.740000 | 2.8672698 | 3.1283058 | 2.822222 | 3.0731707 | 2.244444 | 2.760870 | 2.822222 | 8.659988 | 4.714215 | 3.653223 | 14.899895 | 6.023800 | 13.992004 | 8.821666 | 9.257603 | 23.728367 | 11.428400 | 13.516927 | 29.151969 | 17.000504 | 42.999817 | 19.799740 | 25.559033 |
Carmil3 protein_coding | 4.416667 | 0.6947276 | 3.2467962 | 1.260000 | 1.2678571 | 2.880000 | 2.777778 | 2.777778 | 1.799553 | 11.741985 | 2.855119 | 2.949928 | 5.067081 | 8.771731 | 2.728483 | 12.056898 | 7.948024 | 9.269988 | 8.157482 | 6.531983 | 6.384521 | 11.121301 | 7.858031 | 33.491383 |
AY172581.2 Mt_tRNA | 3.763407 | 1.0234423 | 3.6221154 | 2.766208 | 1.8044693 | 2.134650 | 3.361809 | 2.766208 | 42.434328 | 215.681624 | 104.487739 | 141.077814 | 88.158679 | 102.284180 | 67.828181 | 85.944324 | 159.697643 | 378.466647 | 220.737699 | 105.858674 | 243.865264 | 184.568660 | 144.789420 | 288.928406 |
Map4k1 protein_coding | 2.913044 | 1.4207193 | 2.8024406 | 2.750000 | 1.7419355 | 1.075472 | 4.111111 | 2.750000 | 3.983595 | 4.285650 | 2.191934 | 4.750691 | 3.212694 | 10.579320 | 10.389963 | 3.622540 | 11.604384 | 6.142765 | 6.088706 | 13.388312 | 8.834907 | 18.428493 | 11.174111 | 14.892665 |
Rfx8 protein_coding | 3.181818 | 1.3599820 | 4.3389004 | 3.750000 | 2.0454545 | 1.933333 | 2.733333 | 2.733333 | 1.649590 | 3.398996 | 1.495538 | 1.580319 | 1.216099 | 3.446037 | 1.637090 | 6.698277 | 5.248695 | 6.488992 | 4.622573 | 4.003474 | 4.560372 | 7.048712 | 3.165040 | 18.308623 |
AY172581.6 Mt_tRNA | 7.862500 | 3.7185057 | 1.9824117 | 4.378049 | 2.6694215 | 1.676471 | 2.012821 | 2.669421 | 8.428366 | 20.977714 | 24.435535 | 8.840284 | 36.617245 | 18.145489 | 42.023947 | 21.209453 | 66.268026 | 48.441290 | 78.005747 | 15.170365 | 160.312086 | 48.437958 | 70.451912 | 42.690821 |
Scn2a protein_coding | 2.851852 | 3.8241002 | 1.1505975 | 1.575000 | 1.6388889 | 3.318182 | 2.666667 | 2.666667 | 5.830394 | 2.677245 | 5.119026 | 9.605815 | 8.050089 | 6.235191 | 3.142810 | 3.653223 | 16.627419 | 5.889938 | 10.238052 | 18.231444 | 12.678891 | 10.218786 | 10.428415 | 9.741929 |
Mroh7 protein_coding | 1.960000 | 1.4743871 | 2.6570660 | 2.933333 | 1.9310345 | 3.833333 | 2.857143 | 2.657066 | 3.346556 | 10.238052 | 3.724704 | 5.836315 | 5.195993 | 4.142795 | 2.191934 | 6.046334 | 6.559249 | 9.896783 | 15.094852 | 15.093917 | 15.241579 | 7.999880 | 8.402414 | 17.275241 |
Insc protein_coding | 2.700000 | 3.2991962 | 2.8037132 | 2.631579 | 2.1666667 | 2.166667 | 1.880000 | 2.631579 | 4.025045 | 2.424797 | 2.285680 | 3.287901 | 4.102870 | 3.212694 | 6.142831 | 4.900926 | 10.867620 | 6.408391 | 7.999880 | 7.062899 | 10.797026 | 6.960836 | 13.309467 | 9.213741 |
Cdc45 protein_coding | 1.333333 | 1.9238199 | 2.6237482 | 3.363636 | 2.1923077 | 2.607143 | 4.000000 | 2.607143 | 4.486615 | 3.582056 | 2.128174 | 4.855779 | 2.401065 | 11.610346 | 4.198956 | 5.870993 | 5.982153 | 5.583792 | 6.891229 | 12.687682 | 8.076309 | 25.453451 | 10.947278 | 23.483971 |
Vav1 protein_coding | 2.833333 | 2.9704696 | 1.7744108 | 2.600000 | 1.5483871 | 2.950000 | 2.166667 | 2.600000 | 5.561993 | 1.631496 | 1.685673 | 1.621466 | 3.132761 | 3.383319 | 8.931035 | 3.599105 | 15.758980 | 2.991077 | 4.846310 | 6.181838 | 8.145178 | 5.238687 | 26.346554 | 7.798061 |
Trpm1 protein_coding | 1.243902 | 1.2984896 | 3.6563617 | 2.600000 | 5.6153846 | 1.634146 | 4.157895 | 2.600000 | 12.668984 | 5.030447 | 1.264255 | 1.418783 | 4.699141 | 1.418811 | 18.308623 | 2.849292 | 15.758980 | 4.622573 | 6.531983 | 7.296596 | 12.217768 | 7.967170 | 29.918969 | 11.847055 |
Cep41 protein_coding | 1.421053 | 0.7149905 | 2.6738322 | 2.666667 | 0.9411765 | 2.571429 | 3.545454 | 2.571429 | 2.849292 | 4.943994 | 2.311287 | 2.528510 | 1.520124 | 2.662847 | 1.527950 | 4.912070 | 4.048993 | 6.179992 | 3.534909 | 5.478438 | 4.053664 | 2.506209 | 3.929015 | 17.415519 |
# mito genes
rbind(xd2[grep("Mt-",rownames(xd2) ),],xd2[grep("Mt_",rownames(xd2) ),]) %>% kbl() %>% kable_paper("hover", full_width = F)
r1 | r15 | r2 | r26 | r27 | r28 | r32 | median | 1 | 15 | 2 | 20 | 26 | 27 | 28 | 32 | 33 | 34 | 47 | 52 | 58 | 59 | 60 | 64 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Mt-nd6 protein_coding | 1.1369234 | 0.8699888 | 2.1482486 | 0.4690199 | 1.1578503 | 1.2160677 | 0.8041597 | 1.1369234 | 3.767326e+03 | 1.047355e+04 | 6033.57238 | 1.914174e+04 | 8602.69312 | 9.537947e+03 | 7.123013e+03 | 4.670644e+03 | 4283.16086 | 12961.61333 | 9.111868e+03 | 6089.59319 | 4034.83421 | 11043.51496 | 8.662066e+03 | 3755.94366 |
Mt-nd5 protein_coding | 0.9486163 | 0.5145339 | 1.3064538 | 0.5054752 | 0.6743493 | 0.5734612 | 0.6476679 | 0.6476679 | 1.022810e+04 | 2.017576e+04 | 17122.64891 | 3.916929e+04 | 13886.54780 | 3.318192e+04 | 1.616813e+04 | 8.312476e+03 | 9702.54717 | 22369.94930 | 1.038111e+04 | 13953.84977 | 7019.30500 | 22376.20703 | 9.271794e+03 | 5383.72400 |
Mt-nd1 protein_coding | 1.0805666 | 0.6461820 | 1.1563177 | 0.4221072 | 0.4961123 | 0.5250087 | 0.5646383 | 0.5646383 | 1.329915e+04 | 1.694102e+04 | 16350.89759 | 8.857240e+03 | 15972.47190 | 1.447867e+04 | 3.245701e+04 | 1.273182e+04 | 14370.61685 | 18906.83238 | 1.094698e+04 | 2354.01537 | 6742.09469 | 7183.04737 | 1.704021e+04 | 7188.87404 |
Mt-cyb protein_coding | 1.0443196 | 0.6271076 | 1.3784268 | 0.3634736 | 0.4752000 | 0.4637670 | 0.5496341 | 0.5496341 | 3.972684e+04 | 2.169428e+04 | 21251.80828 | 1.467315e+04 | 22050.72097 | 2.183889e+04 | 7.813093e+04 | 1.598603e+04 | 41487.52414 | 29294.06104 | 1.360465e+04 | 3418.15119 | 8014.85555 | 10377.83922 | 3.623455e+04 | 8786.46568 |
Mt-nd3 protein_coding | 0.9923033 | 0.4362767 | 0.9406466 | 0.3998078 | 0.7539716 | 0.5216859 | 0.3677097 | 0.5216859 | 6.075848e+02 | 1.065127e+03 | 782.27690 | 1.329762e+03 | 557.13461 | 1.632628e+03 | 1.120940e+03 | 1.086963e+03 | 602.90837 | 735.84611 | 4.646900e+02 | 242.71714 | 222.74675 | 1230.95509 | 5.847785e+02 | 399.68693 |
Mt-nd2 protein_coding | 0.8792986 | 0.6012676 | 0.8153250 | 0.4283192 | 0.4830796 | 0.4937795 | 0.4981790 | 0.4981790 | 1.440666e+04 | 1.422803e+04 | 15628.90324 | 1.609550e+04 | 9889.11336 | 5.939362e+04 | 1.835799e+04 | 2.765856e+04 | 12667.75352 | 12742.63553 | 8.554853e+03 | 3575.57668 | 4235.69683 | 28691.84445 | 9.064796e+03 | 13778.91078 |
Mt-co2 protein_coding | 1.0807717 | 0.3276505 | 2.2334365 | 0.3933792 | 0.5325516 | 0.4950733 | 0.4626619 | 0.4950733 | 8.161721e+03 | 2.907377e+04 | 13107.84966 | 6.876914e+03 | 6468.53368 | 1.452019e+04 | 9.459104e+03 | 2.916965e+04 | 8820.95711 | 29275.55041 | 9.526035e+03 | 1767.63902 | 2544.58651 | 7732.75043 | 4.682950e+03 | 13495.68765 |
Mt-co1 protein_coding | 1.0466041 | 0.8363324 | 1.0675704 | 0.3056117 | 0.4187980 | 0.4462375 | 0.4685079 | 0.4685079 | 1.332441e+05 | 1.205034e+05 | 136899.01304 | 9.734017e+04 | 73884.89173 | 1.047562e+05 | 1.418008e+05 | 5.664862e+04 | 139453.86819 | 146149.33278 | 1.007809e+05 | 20329.14883 | 22580.08987 | 43871.68126 | 6.327683e+04 | 26540.32928 |
Mt-nd4 protein_coding | 0.7371841 | 1.1529481 | 0.6223015 | 0.3096842 | 0.4678186 | 0.4650555 | 0.4487498 | 0.4678186 | 1.621512e+03 | 2.348997e+03 | 3995.67992 | 1.759107e+03 | 6759.90072 | 3.914327e+03 | 6.738046e+03 | 1.968400e+03 | 1195.35298 | 2486.51777 | 2.708272e+03 | 474.75602 | 2093.43471 | 1831.19476 | 3.133565e+03 | 883.31932 |
Mt-co3 protein_coding | 1.2753139 | 0.5898128 | 1.5235678 | 0.3448433 | 0.4484976 | 0.4056546 | 0.4356036 | 0.4484976 | 1.156795e+04 | 2.333037e+04 | 15185.11591 | 1.533734e+04 | 10675.08402 | 2.830786e+04 | 1.585143e+04 | 2.748849e+04 | 14752.76692 | 23135.55404 | 1.376055e+04 | 2652.53164 | 3681.23142 | 12696.00650 | 6.430206e+03 | 11974.08408 |
Mt-nd4l protein_coding | 0.6968066 | 0.7852922 | 0.3379897 | 0.3589272 | 0.3699514 | 0.3959591 | 0.2704320 | 0.3699514 | 2.017541e+03 | 2.369237e+03 | 4471.91208 | 1.934443e+03 | 3524.61996 | 3.310281e+03 | 2.599776e+03 | 2.373530e+03 | 1405.83606 | 1511.46028 | 1.860543e+03 | 291.28422 | 1265.08193 | 1224.64334 | 1.029405e+03 | 641.87832 |
Mt-atp6 protein_coding | 0.8072471 | 0.2738409 | 1.3552379 | 0.2599370 | 0.3355892 | 0.3394591 | 0.3566967 | 0.3394591 | 1.665353e+04 | 6.291863e+04 | 35256.28019 | 3.311344e+04 | 24950.81127 | 3.020698e+04 | 2.248985e+04 | 2.724435e+04 | 13443.51623 | 47780.64633 | 1.722969e+04 | 4918.60454 | 6485.63828 | 10137.13366 | 7.634384e+03 | 9717.97089 |
Mt-atp8 protein_coding | 0.6187845 | 0.6642837 | 0.1909117 | 0.1326042 | 0.1055570 | 0.1189034 | 0.1532550 | 0.1532550 | 1.293214e+03 | 2.511876e+02 | 1128.77559 | 3.930547e+02 | 308.26748 | 3.993873e+02 | 4.913736e+02 | 2.414162e+02 | 800.22078 | 215.49643 | 1.668598e+02 | 28.00735 | 40.87757 | 42.15811 | 5.842599e+01 | 36.99823 |
AY172581.19 Mt_tRNA | 3.5567010 | 1.8680200 | 21.4728998 | 11.8270677 | 14.5652174 | 11.6699029 | 15.8850575 | 11.8270677 | 1.058651e+01 | 5.715863e+01 | 13.49664 | 3.398996e+01 | 18.08242 | 7.269465e+00 | 1.043819e+01 | 1.362751e+01 | 37.65306 | 289.81210 | 1.067735e+02 | 199.92275 | 213.86198 | 105.88135 | 1.218126e+02 | 216.47378 |
AY172581.21 Mt_tRNA | 4.5773810 | 2.8967938 | 2.5284792 | 7.8340426 | 4.6573705 | 4.9311594 | 6.6643599 | 4.6573705 | 5.733309e+01 | 7.037729e+01 | 75.67084 | 4.208754e+01 | 33.57093 | 3.056530e+01 | 5.959958e+01 | 3.868619e+01 | 262.43539 | 191.33214 | 2.038685e+02 | 108.94265 | 262.99606 | 142.35394 | 2.938950e+02 | 257.81866 |
AY172581.22 Mt_tRNA | 4.4689655 | 1.0351649 | 5.3553478 | 6.2985075 | 2.6887755 | 3.3209877 | 4.8167539 | 4.4689655 | 2.174459e+01 | 6.921591e+01 | 35.48505 | 2.128162e+01 | 20.36966 | 3.070106e+01 | 2.652085e+01 | 8.529139e+01 | 97.17584 | 190.03476 | 7.164988e+01 | 32.44921 | 128.29848 | 82.54825 | 8.807543e+01 | 410.82763 |
AY172581.2 Mt_tRNA | 3.7634069 | 1.0234423 | 3.6221154 | 2.7662083 | 1.8044693 | 2.1346499 | 3.3618090 | 2.7662083 | 4.243433e+01 | 2.156816e+02 | 104.48774 | 1.410778e+02 | 88.15868 | 1.022842e+02 | 6.782818e+01 | 8.594432e+01 | 159.69764 | 378.46665 | 2.207377e+02 | 105.85867 | 243.86526 | 184.56866 | 1.447894e+02 | 288.92841 |
AY172581.6 Mt_tRNA | 7.8625000 | 3.7185057 | 1.9824117 | 4.3780488 | 2.6694215 | 1.6764706 | 2.0128205 | 2.6694215 | 8.428366e+00 | 2.097771e+01 | 24.43554 | 8.840284e+00 | 36.61725 | 1.814549e+01 | 4.202395e+01 | 2.120945e+01 | 66.26803 | 48.44129 | 7.800575e+01 | 15.17036 | 160.31209 | 48.43796 | 7.045191e+01 | 42.69082 |
AY172581.8 Mt_tRNA | 2.7966102 | 1.4806176 | 2.0400512 | 9.3636364 | 1.7111111 | 2.3673469 | 7.5714286 | 2.3673469 | 1.195831e+01 | 5.012417e+00 | 15.27950 | 1.875517e+01 | 3.29918 | 1.390498e+01 | 6.661943e+00 | 2.212446e+00 | 33.44273 | 31.17097 | 7.421473e+00 | 31.70518 | 30.89232 | 23.79297 | 1.577113e+01 | 16.75138 |
AY172581.24 Mt_rRNA | 1.0266671 | 0.8752098 | 2.1614359 | 0.4597052 | 0.7828493 | 0.7200970 | 0.5540846 | 0.7828493 | 5.698407e+05 | 3.972429e+05 | 213528.11708 | 4.252197e+05 | 447742.96323 | 4.514723e+05 | 1.486831e+06 | 3.950397e+05 | 585036.69370 | 461527.34435 | 3.476708e+05 | 110488.09667 | 205829.75481 | 353434.79433 | 1.070662e+06 | 218885.43508 |
AY172581.9 Mt_rRNA | 0.8060800 | 0.6516189 | 3.2520250 | 0.4061220 | 0.6664038 | 0.5938419 | 0.4656528 | 0.6516189 | 2.468506e+05 | 6.048980e+05 | 264046.73291 | 1.328060e+06 | 559352.07408 | 7.619957e+05 | 5.608908e+05 | 3.778608e+05 | 198981.33519 | 858686.58502 | 3.941630e+05 | 285489.43860 | 227165.16532 | 507796.81333 | 3.330805e+05 | 175951.93215 |
To dig deeper into this set of genes, I ran a heatmap. It shows that there is some enrichment as one might expect.
I also show the barplot.
candidates <- rownames(head(xd2,30))
candidates_df <- xmnorm[which(rownames(xmnorm) %in% candidates),]
heatmap.2(as.matrix(candidates_df),trace="none",scale="row",margin=c(5,15),Colv="none",dendrogram="row")
par(mfrow=c(1,2))
sapply(1:nrow(candidates_df),function(i) {
wc <- as.numeric(candidates_df[i,1:7])
mit <- as.numeric(candidates_df[i,8:14])
wtest <- wilcox.test(wc,mit,paired=TRUE)
HEAD = paste("paired Wilcox p =",signif(wtest$p.value,2))
nam <- rownames(candidates_df)[i]
dat <- list("whole cell"=wc,"mito"=mit)
boxplot(dat,ylab="normalised expression",cex=0,col="white",main=nam)
beeswarm(dat,add=TRUE,cex=1.5,pch=19)
mtext(HEAD)
vec <- as.numeric(candidates_df[i,])
barplot(as.numeric(vec),names.arg=colnames(candidates_df),main=nam ,ylab="normalised expression")
mtext(HEAD)
} )
## [[1]]
## NULL
##
## [[2]]
## NULL
##
## [[3]]
## NULL
##
## [[4]]
## NULL
##
## [[5]]
## NULL
##
## [[6]]
## NULL
##
## [[7]]
## NULL
##
## [[8]]
## NULL
##
## [[9]]
## NULL
##
## [[10]]
## NULL
##
## [[11]]
## NULL
##
## [[12]]
## NULL
##
## [[13]]
## NULL
##
## [[14]]
## NULL
##
## [[15]]
## NULL
##
## [[16]]
## NULL
##
## [[17]]
## NULL
##
## [[18]]
## NULL
##
## [[19]]
## NULL
##
## [[20]]
## NULL
##
## [[21]]
## NULL
##
## [[22]]
## NULL
##
## [[23]]
## NULL
##
## [[24]]
## NULL
##
## [[25]]
## NULL
##
## [[26]]
## NULL
##
## [[27]]
## NULL
##
## [[28]]
## NULL
##
## [[29]]
## NULL
##
## [[30]]
## NULL
par(mfrow=c(1,1))
Now we’d like to know which transcripts are differentially regulated in the mito fractions comparing sedentary and trained sample groups. Using DESeq2 I show that there are no consistent differences observed at the FDR level. I used the mitochondrial fraction of reads as a covariate and it didn’t improve the p-values at all.
# covariate
run_de_cov <- 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 = ~ mtfrac + trt)
#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:20]),]
mycols <- gsub("S","yellow",ss$trt)
mycols <- gsub("T","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.8, cexCol=0.8 , main="Top 20 genes by p-val")
mtext("yellow=sed, orange=trn")
de <- merge(as.data.frame(de),yn,by=0)
rownames(de) <- de[,1]
de[,1]=NULL
de <- de[order(de$pvalue),]
return(de)
}
ss1 <- subset(ss,nreads>2e6 & fraction=="mito")
ss1$trt <- factor(ss1$Group)
x1 <- x[,which(colnames(x) %in% ss1$UDI)]
dim(x1)
## [1] 19938 8
x1 <- x1[which(rowMeans(x1)>10),]
dim(x1)
## [1] 14399 8
de1 <- run_de_cov(ss1,x1)
## converting counts to integer mode
## estimating size factors
## estimating dispersions
## gene-wise dispersion estimates
## mean-dispersion relationship
## final dispersion estimates
## fitting model and testing
## chr(0)
## chr(0)
head(de1,20) %>% kbl(caption="top 20 genes by p-value") %>% kable_paper("hover", full_width = F)
baseMean | log2FoldChange | lfcSE | stat | pvalue | padj | 33 | 34 | 47 | 52 | 58 | 59 | 60 | 64 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Obscn protein_coding | 876.825294 | -0.9979465 | 0.2905475 | -3.434711 | 0.0005932 | 0.9997206 | 111.141806 | 37.6905045 | 160.8086796 | 773.949261 | 278.887997 | 121.6734313 | 59.8270533 | 161.5108378 |
St8sia5 protein_coding | 21.851523 | 1.3413550 | 0.4294442 | 3.123468 | 0.0017873 | 0.9997206 | 5.152493 | 3.7403492 | 1.0717679 | 2.525791 | 6.652030 | 14.1807456 | 4.9378396 | 1.6912241 |
Lrrc29 protein_coding | 13.114260 | 1.5919602 | 0.5325210 | 2.989479 | 0.0027945 | 0.9997206 | 3.470625 | 3.9996975 | 0.1266113 | 1.162717 | 4.161629 | 4.5418526 | 4.6443276 | 1.4032171 |
Gata3 protein_coding | 20.217508 | 1.3163191 | 0.4411174 | 2.984056 | 0.0028445 | 0.9997206 | 6.908568 | 2.5322254 | 0.6342090 | 3.567111 | 9.885209 | 3.0366757 | 5.0515816 | 3.7598432 |
Tifab protein_coding | 14.521850 | -1.4735780 | 0.5045511 | -2.920573 | 0.0034939 | 0.9997206 | 2.774419 | 4.5418526 | 3.9298156 | 3.087078 | 2.602968 | 1.4544354 | 0.7596676 | 2.1140302 |
Slu7 protein_coding | 28.329347 | -0.9642324 | 0.3389020 | -2.845166 | 0.0044388 | 0.9997206 | 7.480698 | 2.3221638 | 5.4725467 | 13.014842 | 9.090222 | 2.9120592 | 2.0083286 | 8.9177763 |
Atpsckmt protein_coding | 17.871816 | 1.2967511 | 0.4568337 | 2.838563 | 0.0045317 | 0.9997206 | 4.557975 | 5.3433560 | 1.4290239 | 1.683860 | 8.098124 | 5.0905241 | 3.6717269 | 0.9513136 |
Fcho1 protein_coding | 46.478271 | -0.8111672 | 0.2881923 | -2.814674 | 0.0048827 | 0.9997206 | 7.090231 | 2.7482392 | 13.6739237 | 13.358390 | 7.681003 | 3.9290079 | 11.8579670 | 25.4526203 |
Mks1 protein_coding | 34.540589 | 0.9054514 | 0.3251192 | 2.784983 | 0.0053531 | 0.9997206 | 5.894723 | 4.2096513 | 5.2059367 | 11.999092 | 6.837009 | 4.8622694 | 8.5214307 | 6.9463629 |
RNase_MRP ribozyme | 122.272114 | -1.6891331 | 0.6187080 | -2.730097 | 0.0063316 | 0.9997206 | 8.816538 | 3.0366757 | 33.5368887 | 120.025764 | 23.998185 | 17.3457441 | 4.7565678 | 19.4209351 |
Snrnp70 protein_coding | 43.429113 | 0.8234324 | 0.3023866 | 2.723112 | 0.0064670 | 0.9997206 | 13.453528 | 4.9378396 | 3.0653437 | 7.926912 | 17.633075 | 10.8963070 | 7.1564072 | 8.9657799 |
Gm12169 protein_coding | 9.978901 | -1.5977405 | 0.5894242 | -2.710680 | 0.0067145 | 0.9997206 | 4.274685 | 1.4290239 | 1.2628954 | 5.205937 | 1.818044 | 0.5064451 | 0.3171045 | 3.5671105 |
Etv4 protein_coding | 27.736411 | -0.9773083 | 0.3605662 | -2.710482 | 0.0067185 | 0.9997206 | 10.411874 | 6.5449595 | 4.3047832 | 2.748239 | 4.954320 | 4.2746848 | 3.0366757 | 7.8580158 |
Magel2 protein_coding | 12.293622 | -1.4208962 | 0.5305043 | -2.678388 | 0.0073978 | 0.9997206 | 2.671678 | 0.5358840 | 2.2451474 | 3.470625 | 4.363306 | 1.0128902 | 0.7399106 | 7.5305667 |
Pmpcb protein_coding | 31.587927 | 0.9477570 | 0.3557676 | 2.663978 | 0.0077223 | 0.9997206 | 4.630616 | 9.2549986 | 6.5449595 | 3.291893 | 3.276747 | 8.9177763 | 12.5568867 | 3.7511877 |
Kctd7 protein_coding | 16.981527 | -1.2243307 | 0.4602606 | -2.660081 | 0.0078122 | 0.9997206 | 4.627499 | 0.3636089 | 3.7983381 | 2.959642 | 3.368938 | 4.0075170 | 1.7862798 | 4.0693296 |
Rnpep protein_coding | 32.878798 | 0.9928234 | 0.3739498 | 2.654964 | 0.0079317 | 0.9997206 | 3.065344 | 4.9543202 | 6.6791951 | 2.143536 | 5.753190 | 15.6178102 | 19.2712697 | 3.7983381 |
Ybx1 protein_coding | 27.676074 | 0.9340399 | 0.3579120 | 2.609692 | 0.0090624 | 0.9997206 | 4.954320 | 6.6791951 | 3.5725597 | 3.227399 | 11.568748 | 12.7263102 | 5.1910621 | 1.6912241 |
Slc22a20 protein_coding | 24.182140 | 1.0293425 | 0.3948514 | 2.606911 | 0.0091363 | 0.9997206 | 2.972592 | 6.9463629 | 3.0366757 | 2.666113 | 10.701092 | 11.2718747 | 4.5580058 | 1.4798211 |
Gja4 protein_coding | 11.560493 | -1.4822458 | 0.5752507 | -2.576695 | 0.0099750 | 0.9997206 | 2.545262 | 1.0128902 | 2.9596422 | 3.963456 | 2.404510 | 1.6076519 | 0.2806434 | 2.8921871 |
sessionInfo()
## R version 4.2.1 (2022-06-23)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 20.04.4 LTS
##
## Matrix products: default
## BLAS: /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
## LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/liblapack.so.3
##
## 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] stats4 stats graphics grDevices utils datasets methods
## [8] base
##
## other attached packages:
## [1] beeswarm_0.4.0 kableExtra_1.3.4
## [3] gplots_3.1.3 mitch_1.8.0
## [5] DESeq2_1.36.0 SummarizedExperiment_1.26.1
## [7] Biobase_2.56.0 MatrixGenerics_1.8.0
## [9] matrixStats_0.62.0 GenomicRanges_1.48.0
## [11] GenomeInfoDb_1.32.2 IRanges_2.30.0
## [13] S4Vectors_0.34.0 BiocGenerics_0.42.0
## [15] reshape2_1.4.4
##
## loaded via a namespace (and not attached):
## [1] bitops_1.0-7 bit64_4.0.5 webshot_0.5.3
## [4] RColorBrewer_1.1-3 httr_1.4.3 tools_4.2.1
## [7] bslib_0.3.1 utf8_1.2.2 R6_2.5.1
## [10] KernSmooth_2.23-20 DBI_1.1.3 colorspace_2.0-3
## [13] gridExtra_2.3 tidyselect_1.1.2 GGally_2.1.2
## [16] bit_4.0.4 compiler_4.2.1 rvest_1.0.2
## [19] cli_3.3.0 xml2_1.3.3 DelayedArray_0.22.0
## [22] sass_0.4.1 caTools_1.18.2 scales_1.2.0
## [25] genefilter_1.78.0 systemfonts_1.0.4 stringr_1.4.0
## [28] digest_0.6.29 svglite_2.1.0 rmarkdown_2.14
## [31] XVector_0.36.0 pkgconfig_2.0.3 htmltools_0.5.2
## [34] highr_0.9 fastmap_1.1.0 htmlwidgets_1.5.4
## [37] rlang_1.0.2 rstudioapi_0.13 RSQLite_2.2.14
## [40] shiny_1.7.1 jquerylib_0.1.4 generics_0.1.2
## [43] jsonlite_1.8.0 gtools_3.9.2.2 BiocParallel_1.30.3
## [46] dplyr_1.0.9 RCurl_1.98-1.7 magrittr_2.0.3
## [49] GenomeInfoDbData_1.2.8 Matrix_1.4-1 Rcpp_1.0.8.3
## [52] munsell_0.5.0 fansi_1.0.3 lifecycle_1.0.1
## [55] stringi_1.7.6 yaml_2.3.5 MASS_7.3-57
## [58] zlibbioc_1.42.0 plyr_1.8.7 grid_4.2.1
## [61] blob_1.2.3 promises_1.2.0.1 parallel_4.2.1
## [64] crayon_1.5.1 lattice_0.20-45 Biostrings_2.64.0
## [67] echarts4r_0.4.4 splines_4.2.1 annotate_1.74.0
## [70] KEGGREST_1.36.2 locfit_1.5-9.5 knitr_1.39
## [73] pillar_1.7.0 tcltk_4.2.1 geneplotter_1.74.0
## [76] codetools_0.2-18 XML_3.99-0.10 glue_1.6.2
## [79] evaluate_0.15 png_0.1-7 vctrs_0.4.1
## [82] httpuv_1.6.5 gtable_0.3.0 purrr_0.3.4
## [85] reshape_0.8.9 assertthat_0.2.1 cachem_1.0.6
## [88] ggplot2_3.3.6 xfun_0.31 mime_0.12
## [91] xtable_1.8-4 later_1.3.0 viridisLite_0.4.0
## [94] survival_3.3-1 tibble_3.1.7 AnnotationDbi_1.58.0
## [97] memoise_2.0.1 ellipsis_0.3.2