.. _DEG_label:
5. DEG
=======================
.. code:: r
suppressPackageStartupMessages({
library(reticulate)
library(Seurat)
library(dplyr)
library(ggpubr)
library(sceasy)
library(future)
})
# utilities
o<- function(w,h) options(repr.plot.width=w, repr.plot.height=h)
manycolors=c('#e6194b', '#3cb44b', '#ffe119', '#4363d8', '#f58231',
'#911eb4', '#46f0f0', '#f032e6', '#bcf60c', '#fabebe',
'#008080', '#e6beff', '#9a6324', '#fffac8', '#800000',
'#aaffc3', '#808000', '#ffd8b1', '#000075', '#808080',
'#4f34ff', '#f340F0')
covid.color.table= c(
'B'="#FFF3B0", 'Plasma'='#E09F3E',
'T'='#2F6D9D',
'T CD4'='#68BDDF',
'T CD8'='#FF046E',
'CD8 cytotoxic T'='#9D2A2B',
'T cycling'='#ADA7FF',
'Treg'='#493A9D',
'NKT'='#3300FF',
'NK'='#D543FF',
'gdT'='#6A24FF',
'Neu'='#312697',
'macrophage'='#429783',
'Mast'='#FF6B3E',
'cDC1'='#FF8F39',
'cDC2'='#E7FF3F',
'moDC'='#FFBCE1',
'pDC'='#FF72DB',
'DC'='#FF0022',
'Mye'='#19C3BE'
)
heca.color.table=c(
'B cell'='#FFF3B0',
'CD8 T cell'='#FF046E',
'Dendritic cell'='#FF0022',
'Macrophage'='#429783',
'Mast cell'='#FF6B3E',
'Megakaryocyte'='gray',
'Monocyte'='#429753',
'Myeloid cell'='#19C3BE',
'NK cell'='#D543FF',
'Neutrophilic granunocyte'='#312697',
'Plasma B cell'='#E09F3E',
'T cell'='#2F6D9D'
)
load data
=========
load COVID data
---------------
.. code:: r
load("./nCoV.integrated.annotated.rda")
.. code:: r
o(9,8)
DimPlot(immune.combined, group.by='persample_ann', label=T, repel=T, cols=covid.color.table) + ggtitle(
"COVID19 lung immune cells")&
theme(axis.title = element_blank(),
axis.text = element_blank(),
axis.ticks=element_blank())
cairo_pdf(filename = 'covid19.umap.pdf', width = 9,height = 8)
DimPlot(immune.combined, group.by='persample_ann', label=T, repel=T, cols=covid.color.table) + ggtitle(
"COVID19 lung immune cells")&
theme(axis.title = element_blank(),
axis.text = element_blank(),
axis.ticks=element_blank())
dev.off()
.. raw:: html
png: 2
.. image:: output_4_1.png
:width: 540px
:height: 480px
.. code:: r
mac.covid = subset(immune.combined, persample_ann=='macrophage')
cd8t.covid = subset(immune.combined, persample_ann=='T CD8'| persample_ann=='CD8 cytotoxic T')
nk.covid = subset(immune.combined, persample_ann=='NK')
dc.covid = subset(immune.combined, persample_ann=='DC'|persample_ann=='pDC'|
persample_ann=='moDC'|persample_ann=='cDC1'|
persample_ann=='cDC2')
load hECA data
--------------
.. code:: r
load("./heca.integrated.annotated.rda")
.. code:: r
o(10,10)
DimPlot(heca.integrated, group.by='ann',label=T,cols = heca.color.table)
.. image:: output_8_0.png
:width: 600px
:height: 600px
.. code:: r
mac.heca = subset(heca.integrated, ann=='Macrophage')
cd8t.heca = subset(heca.integrated, ann=='CD8 T cell')
nk.heca = subset(heca.integrated, ann=='NK cell')
dc.heca = subset(heca.integrated, ann=='Dendritic cell')
.. code:: r
mac.heca[['group']] <- mac.heca@meta.data$study_id
cd8t.heca[['group']] <- cd8t.heca@meta.data$study_id
nk.heca[['group']] <- nk.heca@meta.data$study_id
dc.heca[['group']] <- dc.heca@meta.data$study_id
combind COVID data and raw hECA data
====================================
.. code:: r
mac = merge(mac.covid, mac.heca)
cd8t = merge(cd8t.covid, cd8t.heca)
nk = merge(nk.covid, nk.heca)
dc = merge(dc.covid, dc.heca)
cobind COVID data with integrated hECA data
===========================================
.. code:: r
seu.covid = mac.covid#
seu.heca = mac.heca #
mat.covid = seu.covid@assays$RNA@data
mat.heca = seu.heca@assays$integrated@data
common.gene= intersect(rownames(mat.covid),rownames(mat.heca))
mat = cbind(mat.covid[common.gene, ],mat.heca[common.gene, ])
seu.int = CreateSeuratObject(mat)
seu.int@meta.data$group <- c(seu.covid@meta.data$group, seu.heca@meta.data$group)
mac.int <- seu.int #
.. code:: r
seu.covid = nk.covid#
seu.heca = nk.heca #
mat.covid = seu.covid@assays$RNA@data
mat.heca = seu.heca@assays$integrated@data
common.gene= intersect(rownames(mat.covid),rownames(mat.heca))
mat = cbind(mat.covid[common.gene, ],mat.heca[common.gene, ])
seu.int = CreateSeuratObject(mat)
seu.int@meta.data$group <- c(seu.covid@meta.data$group, seu.heca@meta.data$group)
nk.int <- seu.int #
.. code:: r
seu.covid = cd8t.covid#
seu.heca = cd8t.heca #
mat.covid = seu.covid@assays$RNA@data
mat.heca = seu.heca@assays$integrated@data
common.gene= intersect(rownames(mat.covid),rownames(mat.heca))
mat = cbind(mat.covid[common.gene, ],mat.heca[common.gene, ])
seu.int = CreateSeuratObject(mat)
seu.int@meta.data$group <- c(seu.covid@meta.data$group, seu.heca@meta.data$group)
cd8t.int <- seu.int #
.. code:: r
seu.covid = dc.covid#
seu.heca = dc.heca #
mat.covid = seu.covid@assays$RNA@data
mat.heca = seu.heca@assays$integrated@data
common.gene= intersect(rownames(mat.covid),rownames(mat.heca))
mat = cbind(mat.covid[common.gene, ],mat.heca[common.gene, ])
seu.int = CreateSeuratObject(mat)
seu.int@meta.data$group <- c(seu.covid@meta.data$group, seu.heca@meta.data$group)
dc.int <- seu.int #
compute original DEG
====================
.. code:: r
Idents(mac.covid)<-'group'
mac.deg = FindMarkers(mac.covid, assay = 'RNA', ident.1='S', ident.2='HC')
mac.deg= mac.deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
.. code:: r
Idents(cd8t.covid)<-'group'
cd8t.deg = FindMarkers(cd8t.covid, assay = 'RNA', ident.1='S', ident.2='HC')
cd8t.deg= cd8t.deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
.. code:: r
Idents(nk.covid)<-'group'
nk.deg = FindMarkers(nk.covid, assay = 'RNA', ident.1='S', ident.2='HC')
nk.deg = nk.deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
.. code:: r
Idents(dc.covid)<-'group'
dc.deg = FindMarkers(dc.covid, assay = 'RNA', ident.1='S', ident.2='HC')
dc.deg = dc.deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
.. code:: r
cd8t.deg %>% filter(abs(avg_log2FC)>1)
.. raw:: html
A data.frame: 185 × 5
| p_val | avg_log2FC | pct.1 | pct.2 | p_val_adj |
| <dbl> | <dbl> | <dbl> | <dbl> | <dbl> |
IFITM1 | 1.155489e-135 | 4.154656 | 0.991 | 0.269 | 2.763469e-131 |
IFI27 | 6.417450e-62 | 4.038861 | 0.654 | 0.051 | 1.534797e-57 |
MTRNR2L12 | 2.895080e-91 | 3.915104 | 0.785 | 0.000 | 6.923873e-87 |
GNLY | 9.419786e-39 | 3.659441 | 0.540 | 0.079 | 2.252836e-34 |
IFITM3 | 3.911152e-91 | 3.503193 | 0.814 | 0.040 | 9.353911e-87 |
MT-ND4L | 5.590826e-119 | 3.467246 | 0.957 | 0.269 | 1.337102e-114 |
MT2A | 6.650069e-91 | 3.264448 | 0.888 | 0.209 | 1.590431e-86 |
TAOK1 | 1.720060e-99 | 3.244849 | 0.897 | 0.107 | 4.113695e-95 |
MT-ATP8 | 2.994307e-91 | 3.070456 | 0.819 | 0.055 | 7.161186e-87 |
CCL2 | 2.796737e-27 | 2.986470 | 0.342 | 0.000 | 6.688677e-23 |
PTPRCAP | 5.388279e-92 | 2.980549 | 0.788 | 0.000 | 1.288661e-87 |
IFI6 | 2.727151e-85 | 2.806009 | 0.867 | 0.174 | 6.522254e-81 |
ISG15 | 2.791363e-81 | 2.721033 | 0.928 | 0.356 | 6.675823e-77 |
MX1 | 2.976782e-81 | 2.625875 | 0.830 | 0.123 | 7.119273e-77 |
IFIT1 | 4.553697e-45 | 2.378480 | 0.519 | 0.016 | 1.089062e-40 |
ISG20 | 1.873834e-79 | 2.341292 | 0.924 | 0.364 | 4.481462e-75 |
RSAD2 | 1.907437e-48 | 2.315871 | 0.554 | 0.024 | 4.561826e-44 |
IFIT3 | 1.077367e-45 | 2.309707 | 0.569 | 0.055 | 2.576630e-41 |
PLSCR1 | 1.830287e-65 | 2.216613 | 0.737 | 0.095 | 4.377313e-61 |
CXCL10 | 1.065728e-14 | 2.150880 | 0.206 | 0.004 | 2.548794e-10 |
TNFSF10 | 4.805049e-48 | 2.144565 | 0.622 | 0.079 | 1.149176e-43 |
IFIT2 | 1.025112e-33 | 2.135096 | 0.422 | 0.012 | 2.451657e-29 |
IFI44L | 1.238383e-57 | 2.087459 | 0.684 | 0.079 | 2.961716e-53 |
STMN1 | 2.428883e-21 | 2.052795 | 0.392 | 0.091 | 5.808917e-17 |
NME2 | 1.345896e-59 | 2.044583 | 0.624 | 0.016 | 3.218844e-55 |
CTSL | 1.126542e-11 | 2.028124 | 0.244 | 0.055 | 2.694237e-07 |
IRF7 | 2.667538e-58 | 1.990120 | 0.722 | 0.115 | 6.379685e-54 |
MT-ND6 | 3.151489e-48 | 1.943122 | 0.637 | 0.103 | 7.537102e-44 |
OAS1 | 1.696656e-47 | 1.854920 | 0.564 | 0.036 | 4.057722e-43 |
LY6E | 1.538384e-73 | 1.831663 | 0.948 | 0.534 | 3.679198e-69 |
⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ |
CD63 | 3.995041e-29 | -1.262340 | 0.497 | 0.692 | 9.554539e-25 |
POLR2J3.1 | 6.082877e-23 | -1.269881 | 0.143 | 0.360 | 1.454781e-18 |
APOE | 3.408216e-31 | -1.271779 | 0.066 | 0.300 | 8.151089e-27 |
MDM4 | 4.924179e-19 | -1.274318 | 0.167 | 0.364 | 1.177667e-14 |
RPL21 | 4.190441e-86 | -1.277622 | 0.936 | 0.988 | 1.002186e-81 |
MT-CO3 | 3.634674e-76 | -1.283082 | 0.963 | 1.000 | 8.692686e-72 |
CD81 | 2.407057e-19 | -1.329554 | 0.272 | 0.466 | 5.756718e-15 |
N4BP2L2 | 8.915186e-37 | -1.432088 | 0.488 | 0.704 | 2.132156e-32 |
JUND | 5.105898e-24 | -1.439820 | 0.368 | 0.573 | 1.221127e-19 |
NDUFB8 | 5.150298e-35 | -1.441190 | 0.123 | 0.399 | 1.231745e-30 |
FABP4 | 7.096662e-82 | -1.487936 | 0.009 | 0.304 | 1.697238e-77 |
CD3G | 1.243945e-47 | -1.527804 | 0.619 | 0.826 | 2.975019e-43 |
TMBIM4 | 6.051902e-34 | -1.537428 | 0.179 | 0.462 | 1.447373e-29 |
ITGA1 | 3.478641e-36 | -1.581896 | 0.304 | 0.597 | 8.319517e-32 |
RPL13A | 1.559235e-92 | -1.673379 | 0.904 | 0.996 | 3.729067e-88 |
TRG-AS1 | 5.162926e-30 | -1.692796 | 0.166 | 0.427 | 1.234765e-25 |
C1orf56 | 1.662701e-94 | -1.728915 | 0.014 | 0.368 | 3.976515e-90 |
MT-ND4 | 4.414551e-99 | -1.791035 | 0.878 | 0.988 | 1.055784e-94 |
RPL27A | 2.021483e-80 | -1.802247 | 0.747 | 0.953 | 4.834579e-76 |
SCGB3A1 | 5.427090e-18 | -1.824991 | 0.041 | 0.178 | 1.297943e-13 |
KLRC1 | 3.358977e-37 | -1.887619 | 0.290 | 0.601 | 8.033329e-33 |
TRAC | 2.194799e-83 | -1.992162 | 0.598 | 0.905 | 5.249081e-79 |
MT-ATP6 | 2.482394e-88 | -2.014161 | 0.893 | 0.976 | 5.936894e-84 |
APOC1 | 6.167297e-102 | -2.037772 | 0.098 | 0.660 | 1.474971e-97 |
MALAT1 | 4.615095e-127 | -2.113269 | 0.999 | 1.000 | 1.103746e-122 |
KLRC2 | 9.027764e-70 | -2.209559 | 0.039 | 0.375 | 2.159080e-65 |
TRGC2 | 7.831464e-72 | -2.530690 | 0.104 | 0.522 | 1.872973e-67 |
KLRB1 | 3.137356e-63 | -2.619874 | 0.066 | 0.427 | 7.503301e-59 |
RPS10 | 1.237779e-127 | -2.818620 | 0.389 | 0.929 | 2.960271e-123 |
SCGB1A1 | 1.666082e-27 | -3.707777 | 0.036 | 0.209 | 3.984602e-23 |
compute raw hECA-control DEG
============================
.. code:: r
unique(mac$group)
.. raw:: html
- 'HC'
- 'M'
- 'S'
- '10.1038/s41591-019-0468-5'
- '10.1186/s13059-019-1906-x'
- '10.1038/s41586-020-2157-4'
.. code:: r
batch1 = '10.1038/s41586-020-2157-4'
batch2 = '10.1186/s13059-019-1906-x'
.. code:: r
seu=mac #
Idents(seu)<-'group'
DefaultAssay(seu)<-'RNA'
plan("sequential")
options(future.globals.maxSize = 1000 * 1024^2*4)
plan("multiprocess", workers = 14)
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch1)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
mac.deg.batch1 <- deg #
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch2)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
mac.deg.batch2 <- deg #
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=c(batch1,batch2))
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
mac.deg.batch12 <- deg #
plan("sequential")
.. code:: r
seu=cd8t #
Idents(seu)<-'group'
DefaultAssay(seu)<-'RNA'
plan("sequential")
options(future.globals.maxSize = 1000 * 1024^2*4)
plan("multiprocess", workers = 14)
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch1)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
cd8t.deg.batch1 <- deg #
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch2)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
cd8t.deg.batch2 <- deg #
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=c(batch1,batch2))
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
cd8t.deg.batch12 <- deg #
plan("sequential")
.. code:: r
seu=nk #
Idents(seu)<-'group'
DefaultAssay(seu)<-'RNA'
plan("sequential")
options(future.globals.maxSize = 1000 * 1024^2*4)
plan("multiprocess", workers = 14)
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch1)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
nk.deg.batch1 <- deg #
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch2)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
nk.deg.batch2 <- deg #
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=c(batch1,batch2))
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
nk.deg.batch12 <- deg #
plan("sequential")
.. code:: r
seu=dc #
Idents(seu)<-'group'
DefaultAssay(seu)<-'RNA'
plan("sequential")
options(future.globals.maxSize = 1000 * 1024^2*4)
plan("multiprocess", workers = 14)
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch1)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
dc.deg.batch1 <- deg #
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch2)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
dc.deg.batch2 <- deg #
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=c(batch1,batch2))
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
dc.deg.batch12 <- deg #
plan("sequential")
.. code:: r
iou <- function(deg1, deg2, abslogfc.cut=0.25){
g1=deg1 %>%filter(avg_log2FC>0) %>% filter(abs(avg_log2FC)>abslogfc.cut) %>% rownames(.)
g2=deg2 %>%filter(avg_log2FC>0) %>% filter(abs(avg_log2FC)>abslogfc.cut) %>% rownames(.)
I=length(intersect(g1,g2))
U=length(union(g1,g2))
print(I)
print(U)
return(I/U)
}
compute integrated hECA-control DEG
===================================
.. code:: r
seu = mac.int #
Idents(seu)<-'group'
DefaultAssay(seu)<-'RNA'
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch1)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
mac.deg.int <- deg #
seu = dc.int #
Idents(seu)<-'group'
DefaultAssay(seu)<-'RNA'
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch1)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
dc.deg.int <- deg #
seu = nk.int #
Idents(seu)<-'group'
DefaultAssay(seu)<-'RNA'
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch1)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
nk.deg.int <- deg #
seu = cd8t.int #
Idents(seu)<-'group'
DefaultAssay(seu)<-'RNA'
deg = FindMarkers(seu, assay = 'RNA', ident.1='S', ident.2=batch1)
deg = deg %>% filter(p_val_adj<0.05) %>%arrange(desc(avg_log2FC))
cd8t.deg.int <- deg #
.. code:: r
cut=1
.. code:: r
heca.ctrl.DEG <-list(
'Mac.1'=mac.deg.batch1,
'Mac.2'=mac.deg.batch2,
'Mac.1.2'=mac.deg.batch12,
'Mac.int'=mac.deg.int,
'DC.1' =dc.deg.batch1,
'DC.2' =dc.deg.batch2,
'DC.1.2'=dc.deg.batch12,
'DC.int'=dc.deg.int,
'CD8T.1' =cd8t.deg.batch1,
'CD8T.2' =cd8t.deg.batch2,
'CD8T.1.2'=cd8t.deg.batch12,
'CD8T.int'=cd8t.deg.int,
'NK.1' =nk.deg.batch1,
'NK.2' =nk.deg.batch2,
'NK.1.2' =nk.deg.batch12,
'NK.int' =nk.deg.int
)
original.DEG<-list('Mac.covid' =mac.deg,
'DC.covid' =dc.deg,
'CD8T.covid'=cd8t.deg,
'NK.covid' =nk.deg
)
.. code:: r
cut=1
L1=names(heca.ctrl.DEG)
L2=names(original.DEG)
scores=matrix(0, length(L1), length(L2))
rownames(scores)<-L1
colnames(scores)<-L2
for (design1 in L1){
for (design2 in L2){
heca = heca.ctrl.DEG[[design1]]
gt = original.DEG[[design2]]
print(paste("comparing", design1, design2))
scores[design1, design2]= iou(heca, gt, abslogfc.cut=cut)
}
}
.. parsed-literal::
[1] "comparing Mac.1 Mac.covid"
[1] 160
[1] 329
[1] "comparing Mac.1 DC.covid"
[1] 110
[1] 340
[1] "comparing Mac.1 CD8T.covid"
[1] 71
[1] 325
[1] "comparing Mac.1 NK.covid"
[1] 57
[1] 299
[1] "comparing Mac.2 Mac.covid"
[1] 176
[1] 322
[1] "comparing Mac.2 DC.covid"
[1] 122
[1] 337
[1] "comparing Mac.2 CD8T.covid"
[1] 76
[1] 329
[1] "comparing Mac.2 NK.covid"
[1] 64
[1] 301
[1] "comparing Mac.1.2 Mac.covid"
[1] 166
[1] 306
[1] "comparing Mac.1.2 DC.covid"
[1] 115
[1] 318
[1] "comparing Mac.1.2 CD8T.covid"
[1] 73
[1] 306
[1] "comparing Mac.1.2 NK.covid"
[1] 61
[1] 278
[1] "comparing Mac.int Mac.covid"
[1] 49
[1] 227
[1] "comparing Mac.int DC.covid"
[1] 42
[1] 195
[1] "comparing Mac.int CD8T.covid"
[1] 19
[1] 164
[1] "comparing Mac.int NK.covid"
[1] 13
[1] 130
[1] "comparing DC.1 Mac.covid"
[1] 94
[1] 352
[1] "comparing DC.1 DC.covid"
[1] 91
[1] 316
[1] "comparing DC.1 CD8T.covid"
[1] 68
[1] 285
[1] "comparing DC.1 NK.covid"
[1] 52
[1] 261
[1] "comparing DC.2 Mac.covid"
[1] 117
[1] 346
[1] "comparing DC.2 DC.covid"
[1] 123
[1] 301
[1] "comparing DC.2 CD8T.covid"
[1] 76
[1] 294
[1] "comparing DC.2 NK.covid"
[1] 57
[1] 273
[1] "comparing DC.1.2 Mac.covid"
[1] 103
[1] 324
[1] "comparing DC.1.2 DC.covid"
[1] 104
[1] 284
[1] "comparing DC.1.2 CD8T.covid"
[1] 72
[1] 262
[1] "comparing DC.1.2 NK.covid"
[1] 53
[1] 241
[1] "comparing DC.int Mac.covid"
[1] 21
[1] 233
[1] "comparing DC.int DC.covid"
[1] 27
[1] 188
[1] "comparing DC.int CD8T.covid"
[1] 15
[1] 146
[1] "comparing DC.int NK.covid"
[1] 7
[1] 114
[1] "comparing CD8T.1 Mac.covid"
[1] 74
[1] 387
[1] "comparing CD8T.1 DC.covid"
[1] 61
[1] 361
[1] "comparing CD8T.1 CD8T.covid"
[1] 82
[1] 286
[1] "comparing CD8T.1 NK.covid"
[1] 58
[1] 270
[1] "comparing CD8T.2 Mac.covid"
[1] 85
[1] 379
[1] "comparing CD8T.2 DC.covid"
[1] 67
[1] 358
[1] "comparing CD8T.2 CD8T.covid"
[1] 104
[1] 267
[1] "comparing CD8T.2 NK.covid"
[1] 65
[1] 266
[1] "comparing CD8T.1.2 Mac.covid"
[1] 85
[1] 368
[1] "comparing CD8T.1.2 DC.covid"
[1] 65
[1] 349
[1] "comparing CD8T.1.2 CD8T.covid"
[1] 100
[1] 260
[1] "comparing CD8T.1.2 NK.covid"
[1] 67
[1] 253
[1] "comparing CD8T.int Mac.covid"
[1] 11
[1] 231
[1] "comparing CD8T.int DC.covid"
[1] 11
[1] 192
[1] "comparing CD8T.int CD8T.covid"
[1] 14
[1] 135
[1] "comparing CD8T.int NK.covid"
[1] 6
[1] 103
[1] "comparing NK.1 Mac.covid"
[1] 108
[1] 551
[1] "comparing NK.1 DC.covid"
[1] 83
[1] 537
[1] "comparing NK.1 CD8T.covid"
[1] 91
[1] 475
[1] "comparing NK.1 NK.covid"
[1] 80
[1] 446
[1] "comparing NK.2 Mac.covid"
[1] 83
[1] 342
[1] "comparing NK.2 DC.covid"
[1] 67
[1] 319
[1] "comparing NK.2 CD8T.covid"
[1] 80
[1] 252
[1] "comparing NK.2 NK.covid"
[1] 70
[1] 222
[1] "comparing NK.1.2 Mac.covid"
[1] 83
[1] 342
[1] "comparing NK.1.2 DC.covid"
[1] 66
[1] 320
[1] "comparing NK.1.2 CD8T.covid"
[1] 79
[1] 253
[1] "comparing NK.1.2 NK.covid"
[1] 70
[1] 222
[1] "comparing NK.int Mac.covid"
[1] 22
[1] 266
[1] "comparing NK.int DC.covid"
[1] 22
[1] 227
[1] "comparing NK.int CD8T.covid"
[1] 19
[1] 176
[1] "comparing NK.int NK.covid"
[1] 18
[1] 137
.. code:: r
library(pheatmap)
o(6,6)
pheatmap(scores, display_numbers=round(scores,digits = 2),
cluster_rows = F, cluster_cols = F,main='IOU# of DEG (FC>2)',
color=colorRampPalette(c("white", "pink", "red"))(50)
)
.. image:: output_41_0.png
:width: 360px
:height: 360px
enrichment analysis compare
===========================
.. code:: r
# use the following genes for enrichment on enrichR
.. code:: r
mac.deg.batch2 %>% filter(avg_log2FC>1) %>% rownames
.. raw:: html
- 'SAT1'
- 'CXCL10'
- 'CCL8'
- 'H3F3B'
- 'SPP1'
- 'IFITM1'
- 'RPS12'
- 'PSAP'
- 'RSAD2'
- 'CCL2'
- 'RPL10'
- 'CCL3L1'
- 'IFITM3'
- 'CCL7'
- 'FABP5'
- 'TAOK1'
- 'H3F3A'
- 'ISG15'
- 'RPL13'
- 'CCL4L2'
- 'IFIT2'
- 'APOBEC3A'
- 'IFIT3'
- 'IFIT1'
- 'TNFSF10'
- 'IFI27'
- 'CTSL'
- 'DUSP1'
- 'ISG20'
- 'MX1'
- 'RAC1'
- 'BRI3'
- 'POMP'
- 'GBP1'
- 'ATP6V0C'
- 'RPL24'
- 'WARS'
- 'IFI30'
- 'GABARAP'
- 'CSTB'
- 'VAMP5'
- 'S100A8'
- 'S100A9'
- 'MIF'
- 'MT-ATP8'
- 'CXCL11'
- 'LGALS3'
- 'IL1RN'
- 'IFITM2'
- 'MX2'
- 'IFI44L'
- 'MGAT1'
- 'TNFSF13B'
- 'SDS'
- 'LCP1'
- 'GBP5'
- 'IDO1'
- 'HERC5'
- 'EPSTI1'
- 'KLF6'
- 'STAT1'
- 'RNF213'
- 'TAP1'
- 'MS4A7'
- 'DBI'
- 'DEFB1'
- 'IRF7'
- 'GBP4'
- 'NAPA'
- 'H2AFY'
- 'MARCKS'
- 'C15orf48'
- 'BTF3'
- 'XAF1'
- 'MPP1'
- 'PLEK'
- 'SGK1'
- 'IFIH1'
- 'CCR1'
- 'DUSP6'
- 'S100A12'
- 'TYMP'
- 'PLSCR1'
- 'AQP9'
- 'NCF1'
- 'OAS1'
- 'NINJ1'
- 'BCL2A1'
- 'NME2'
- 'RHEB'
- 'RPL36A'
- 'IFI6'
- 'CCL4'
- 'FAM49B'
- 'CMPK2'
- 'ELF1'
- 'NAMPT'
- 'HAMP'
- 'GCH1'
- 'DDX60L'
- 'LYN'
- 'SMIM25'
- 'OAS2'
- 'OASL'
- 'MT2A'
- 'FNIP2'
- 'DDX58'
- 'ATF5'
- 'CALHM6'
- 'SAMD9L'
- 'CCNL1'
- 'OAS3'
- 'RNH1'
- 'RARRES3'
- 'FYB1'
- 'HES4'
- 'SP110'
- 'PSMB9'
- 'MAFB'
- 'ZFP36L1'
- 'CD300E'
- 'FAM96B'
- 'LY6E'
- 'FAM96A'
- 'SAMD9'
- 'LAP3'
- 'LHFPL2'
- 'APLP2'
- 'SLAMF7'
- 'B4GALT5'
- 'PARP14'
- 'IFI35'
- 'LILRB4'
- 'IL1R2'
- 'APOL6'
- 'EMP1'
- 'H2AFJ'
- 'DYNLT1'
- 'PTPRE'
- 'EIF2AK2'
- 'CDKN1A'
- 'SOD2'
- 'IFI44'
- 'FCN1'
- 'IL4I1'
- 'STAT2'
- 'CCL3'
- 'PIM1'
- 'ANKRD22'
- 'TUBB'
- 'RGL1'
- 'LIPA'
- 'HIF1A'
- 'AC015912.3'
- 'PGAM1'
- 'GBP2'
- 'SRGN'
- 'IRF1'
- 'SMCHD1'
- 'PSMA6'
- 'SIGLEC1'
- 'USP18'
- 'CYP1B1'
- 'MINOS1'
- 'LCP2'
- 'CD48'
- 'LILRB1'
- 'SCARB2'
- 'ADAR'
- 'HPSE'
- 'H2AFZ'
- 'BACH1'
- 'SLC25A37'
- 'HLA-E'
- 'ACSL1'
- 'HMOX1'
- 'FPR1'
- 'NEXN'
- 'UBE2L6'
- 'MT-ND4L'
- 'B3GNT2'
- 'SEPT7'
- 'LILRA5'
- 'ZNFX1'
- 'C19orf66'
- 'LILRB2'
- 'CXCL9'
- 'MT-ND6'
- 'C8orf59'
- 'ATOX1'
- 'RNF19B'
- 'NBN'
- 'CRIP1'
- 'PIM3'
- 'TRIM22'
- 'EIF3A'
- 'ZEB2'
- 'TFEC'
- 'RBMS1'
- 'HLA-A'
- 'SEM1'
- 'PARP9'
- 'DEK'
- 'SPHK1'
- 'DMXL2'
- 'CBWD2'
- 'DTX3L'
- 'BAZ1A'
- 'TIMP1'
- 'LRP1'
- 'CFLAR'
- 'GNG5'
- 'ABCA1'
- 'PML'
- 'DRAM1'
- 'CTSB'
- 'PSMA7'
- 'KIAA1551'
- 'XRN1'
- 'OPTN'
- 'CSF2RB'
- 'TPM4'
- 'CCRL2'
- 'SLC39A8'
- 'CD38'
- 'LGMN'
- 'P2RX7'
- 'SRGAP2'
- 'MYOF'
- 'PLAC8'
- 'IL10RA'
- 'MARCH1'
- 'GRB2'
- 'FNDC3B'
- 'CD47'
- 'PLA2G7'
- 'PLEKHO1'
- 'SLA'
- 'PSME2'
- 'TLR2'
- 'SNX10'
- 'TAGAP'
- 'PRDX6'
- 'CD274'
- 'VAT1'
- 'RBM47'
- 'CD163'
- 'ARL8B'
- 'PHF11'
- 'FCGR1A'
- 'IFI16'
- 'MRPL27'
- 'C6orf62'
- 'SNRPD1'
- 'TMEM123'
- 'SAT2'
- 'ZFP36L2'
- 'TKT'
- 'HIST2H2AA4'
- 'NMI'
- 'SMS'
- 'C19orf70'
- 'ATP6V1G1'
- 'DSE'
- 'SMAP2'
- 'AAED1'
- 'TCEA1'
- 'TANK'
- 'SQSTM1'
- 'GRINA'
- 'FLOT1'
- 'PLAUR'
- 'HNRNPU'
- 'SLFN5'
SAT1
CXCL10
CCL8
H3F3B
SPP1
IFITM1
RPS12
PSAP
RSAD2
CCL2
RPL10
CCL3L1
IFITM3
CCL7
FABP5
TAOK1
H3F3A
ISG15
RPL13
CCL4L2
IFIT2
APOBEC3A
IFIT3
IFIT1
TNFSF10
IFI27
CTSL
DUSP1
ISG20
MX1
RAC1
BRI3
POMP
GBP1
ATP6V0C
RPL24
WARS
IFI30
GABARAP
CSTB
VAMP5
S100A8
S100A9
MIF
MT-ATP8
CXCL11
LGALS3
IL1RN
IFITM2
MX2
IFI44L
MGAT1
TNFSF13B
SDS
LCP1
GBP5
IDO1
HERC5
EPSTI1
KLF6
STAT1
RNF213
TAP1
MS4A7
DBI
DEFB1
IRF7
GBP4
NAPA
H2AFY
MARCKS
C15orf48
BTF3
XAF1
MPP1
PLEK
SGK1
IFIH1
CCR1
DUSP6
S100A12
TYMP
PLSCR1
AQP9
NCF1
OAS1
NINJ1
BCL2A1
NME2
RHEB
RPL36A
IFI6
CCL4
FAM49B
CMPK2
ELF1
NAMPT
HAMP
GCH1
DDX60L
LYN
SMIM25
OAS2
OASL
MT2A
FNIP2
DDX58
ATF5
CALHM6
SAMD9L
CCNL1
OAS3
RNH1
RARRES3
FYB1
HES4
SP110
PSMB9
MAFB
ZFP36L1
CD300E
FAM96B
LY6E
FAM96A
SAMD9
LAP3
LHFPL2
APLP2
SLAMF7
B4GALT5
PARP14
IFI35
LILRB4
IL1R2
APOL6
EMP1
H2AFJ
DYNLT1
PTPRE
EIF2AK2
CDKN1A
SOD2
IFI44
FCN1
IL4I1
STAT2
CCL3
PIM1
ANKRD22
TUBB
RGL1
LIPA
HIF1A
AC015912.3
PGAM1
GBP2
SRGN
IRF1
SMCHD1
PSMA6
SIGLEC1
USP18
CYP1B1
MINOS1
LCP2
CD48
LILRB1
SCARB2
ADAR
HPSE
H2AFZ
BACH1
SLC25A37
HLA-E
ACSL1
HMOX1
FPR1
NEXN
UBE2L6
MT-ND4L
B3GNT2
SEPT7
LILRA5
ZNFX1
C19orf66
LILRB2
CXCL9
MT-ND6
C8orf59
ATOX1
RNF19B
NBN
CRIP1
PIM3
TRIM22
EIF3A
ZEB2
TFEC
RBMS1
HLA-A
SEM1
PARP9
DEK
SPHK1
DMXL2
CBWD2
DTX3L
BAZ1A
TIMP1
LRP1
CFLAR
GNG5
ABCA1
PML
DRAM1
CTSB
PSMA7
KIAA1551
XRN1
OPTN
CSF2RB
TPM4
CCRL2
SLC39A8
CD38
LGMN
P2RX7
SRGAP2
MYOF
PLAC8
IL10RA
MARCH1
GRB2
FNDC3B
CD47
PLA2G7
PLEKHO1
SLA
PSME2
TLR2
SNX10
TAGAP
PRDX6
CD274
VAT1
RBM47
CD163
ARL8B
PHF11
FCGR1A
IFI16
MRPL27
C6orf62
SNRPD1
TMEM123
SAT2
ZFP36L2
TKT
HIST2H2AA4
NMI
SMS
C19orf70
ATP6V1G1
DSE
SMAP2
AAED1
TCEA1
TANK
SQSTM1
GRINA
FLOT1
PLAUR
HNRNPU
SLFN5
.. code:: r
mac.deg %>% filter(avg_log2FC>1) %>% rownames
.. raw:: html
- 'CCL2'
- 'CCL8'
- 'CXCL10'
- 'IFITM3'
- 'IFITM1'
- 'CCL4L2'
- 'RSAD2'
- 'SPP1'
- 'CCL7'
- 'CCL4'
- 'CCL3L1'
- 'CTSL'
- 'ISG15'
- 'CCL3'
- 'IFI30'
- 'APOBEC3A'
- 'IL1RN'
- 'TNFSF10'
- 'IFIT1'
- 'ISG20'
- 'IFIT2'
- 'TAOK1'
- 'IFITM2'
- 'IFIT3'
- 'MX1'
- 'TIMP1'
- 'ATP6V0C'
- 'IFI27'
- 'HLA-DRB5'
- 'MT-ATP8'
- 'GBP1'
- 'VAMP5'
- 'MAFB'
- 'DEFB1'
- 'SOD2'
- 'NFKBIA'
- 'LGMN'
- 'CXCL8'
- 'CXCL11'
- 'MT2A'
- 'KLF6'
- 'SAT1'
- 'MT-ND4L'
- 'MARCKS'
- 'BCL2A1'
- 'MTRNR2L12'
- 'IDO1'
- 'CALHM6'
- 'C15orf48'
- 'SGK1'
- 'MX2'
- 'S100A8'
- 'NINJ1'
- 'GBP5'
- 'SDS'
- 'EMP1'
- 'IRF7'
- 'NME2'
- 'S100A12'
- 'CCR1'
- 'HAMP'
- 'EPSTI1'
- 'IFI44L'
- 'TNFSF13B'
- 'CTSB'
- 'OAS1'
- 'H3F3B'
- 'ALDOA'
- 'HERC5'
- 'PLEK'
- 'CD163'
- 'GABARAP'
- 'IER3'
- 'GBP4'
- 'CD300E'
- 'IFIH1'
- 'TAP1'
- 'GCH1'
- 'RNASE1'
- 'WARS'
- 'UBE2L6'
- 'ATF5'
- 'LAP3'
- 'LILRB4'
- 'DUSP6'
- 'RGL1'
- 'TYMP'
- 'RNF213'
- 'HES4'
- 'HMOX1'
- 'FNIP2'
- 'DDX58'
- 'IFI6'
- 'IL1R2'
- 'CMPK2'
- 'PLSCR1'
- 'LYN'
- 'SLAMF7'
- 'IL4I1'
- 'HIF1A'
- 'PLA2G7'
- 'IER2'
- 'OASL'
- 'LHFPL2'
- 'CDKN1A'
- 'PSMB9'
- 'DYNLT1'
- 'PSMA6'
- 'XAF1'
- 'MIF'
- 'CD48'
- 'OAS3'
- 'ANKRD22'
- 'ZFP36'
- 'GNG5'
- 'PTPRE'
- 'NAMPT'
- 'TPM4'
- 'ACSL1'
- 'IFI35'
- 'NCF1'
- 'STAT1'
- 'LILRB2'
- 'PHLDA2'
- 'FYB1'
- 'PIM3'
- 'B4GALT5'
- 'ATF3'
- 'CYP1B1'
- 'USP18'
- 'MPP1'
- 'TNFAIP3'
- 'IFI16'
- 'NT5C3A'
- 'LCP2'
- 'GAPDH'
- 'HPSE'
- 'AC015912.3'
- 'GBP2'
- 'OAS2'
- 'SAMD9'
- 'CALM1'
- 'NEXN'
- 'NAPA'
- 'SSB'
- 'GADD45B'
- 'SPHK1'
- 'SOCS1'
- 'EMP3'
- 'SLC25A37'
- 'CCRL2'
- 'HLA-E'
- 'DDX60L'
- 'ZFP36L1'
- 'FOSB'
- 'RARRES3'
- 'PLAUR'
- 'SAMD9L'
- 'LILRA5'
- 'SRGN'
- 'TLR2'
- 'ATOX1'
- 'CEBPD'
- 'TXN'
- 'CXCL9'
- 'HAVCR2'
- 'SQSTM1'
- 'PSME2'
- 'AQP9'
- 'FPR1'
- 'SLC39A8'
- 'OPTN'
- 'SMCHD1'
- 'IRF1'
- 'IFI44'
- 'PSMB10'
- 'TAGAP'
- 'BAZ1A'
- 'CLU'
- 'RALA'
- 'FLOT1'
- 'LILRB1'
- 'NMI'
- 'CBWD2'
- 'ATP6V1G1'
- 'DRAM1'
- 'SIGLEC1'
- 'RNF19B'
- 'IL10RA'
- 'ZNFX1'
- 'PPP1R15A'
- 'ELOC'
- 'CD38'
- 'FCER1G'
- 'CREM'
- 'STAT2'
- 'TNFAIP6'
- 'S100A10'
- 'DEK'
- 'SP110'
- 'TCN2'
- 'PLEKHO1'
- 'CYSTM1'
- 'CD69'
- 'NECTIN2'
- 'CREG1'
- 'ADM'
- 'CFLAR'
- 'ICAM1'
- 'CXCL2'
- 'RIPK2'
- 'MXD1'
- 'MGAT1'
- 'PML'
- 'TMSB10'
- 'HIST2H2AA4'
- 'SAMSN1'
- 'PHF11'
- 'SERPINB9'
- 'CLIC1'
- 'MYOF'
- 'PARP14'
- 'CD83'
- 'HMGA1'
CCL2
CCL8
CXCL10
IFITM3
IFITM1
CCL4L2
RSAD2
SPP1
CCL7
CCL4
CCL3L1
CTSL
ISG15
CCL3
IFI30
APOBEC3A
IL1RN
TNFSF10
IFIT1
ISG20
IFIT2
TAOK1
IFITM2
IFIT3
MX1
TIMP1
ATP6V0C
IFI27
HLA-DRB5
MT-ATP8
GBP1
VAMP5
MAFB
DEFB1
SOD2
NFKBIA
LGMN
CXCL8
CXCL11
MT2A
KLF6
SAT1
MT-ND4L
MARCKS
BCL2A1
MTRNR2L12
IDO1
CALHM6
C15orf48
SGK1
MX2
S100A8
NINJ1
GBP5
SDS
EMP1
IRF7
NME2
S100A12
CCR1
HAMP
EPSTI1
IFI44L
TNFSF13B
CTSB
OAS1
H3F3B
ALDOA
HERC5
PLEK
CD163
GABARAP
IER3
GBP4
CD300E
IFIH1
TAP1
GCH1
RNASE1
WARS
UBE2L6
ATF5
LAP3
LILRB4
DUSP6
RGL1
TYMP
RNF213
HES4
HMOX1
FNIP2
DDX58
IFI6
IL1R2
CMPK2
PLSCR1
LYN
SLAMF7
IL4I1
HIF1A
PLA2G7
IER2
OASL
LHFPL2
CDKN1A
PSMB9
DYNLT1
PSMA6
XAF1
MIF
CD48
OAS3
ANKRD22
ZFP36
GNG5
PTPRE
NAMPT
TPM4
ACSL1
IFI35
NCF1
STAT1
LILRB2
PHLDA2
FYB1
PIM3
B4GALT5
ATF3
CYP1B1
USP18
MPP1
TNFAIP3
IFI16
NT5C3A
LCP2
GAPDH
HPSE
AC015912.3
GBP2
OAS2
SAMD9
CALM1
NEXN
NAPA
SSB
GADD45B
SPHK1
SOCS1
EMP3
SLC25A37
CCRL2
HLA-E
DDX60L
ZFP36L1
FOSB
RARRES3
PLAUR
SAMD9L
LILRA5
SRGN
TLR2
ATOX1
CEBPD
TXN
CXCL9
HAVCR2
SQSTM1
PSME2
AQP9
FPR1
SLC39A8
OPTN
SMCHD1
IRF1
IFI44
PSMB10
TAGAP
BAZ1A
CLU
RALA
FLOT1
LILRB1
NMI
CBWD2
ATP6V1G1
DRAM1
SIGLEC1
RNF19B
IL10RA
ZNFX1
PPP1R15A
ELOC
CD38
FCER1G
CREM
STAT2
TNFAIP6
S100A10
DEK
SP110
TCN2
PLEKHO1
CYSTM1
CD69
NECTIN2
CREG1
ADM
CFLAR
ICAM1
CXCL2
RIPK2
MXD1
MGAT1
PML
TMSB10
HIST2H2AA4
SAMSN1
PHF11
SERPINB9
CLIC1
MYOF
PARP14
CD83
HMGA1
.. code:: r
remotes::install_git("https://gitee.com/chansigit/harmony.git")
.. parsed-literal::
Downloading git repo https://gitee.com/chansigit/harmony.git
'/usr/bin/git' clone --depth 1 --no-hardlinks https://gitee.com/chansigit/harmony.git /tmp/Rtmp5QFgmP/file1e23e6541ee360
.. parsed-literal::
rlang (0.4.12 -> 1.0.2 ) [CRAN]
magrittr (2.0.1 -> 2.0.2 ) [CRAN]
fansi (0.5.0 -> 1.0.2 ) [CRAN]
crayon (1.4.2 -> 1.5.0 ) [CRAN]
cli (3.1.1 -> 3.2.0 ) [CRAN]
pillar (1.6.4 -> 1.7.0 ) [CRAN]
tidyselect (1.1.1 -> 1.1.2 ) [CRAN]
glue (1.6.1 -> 1.6.2 ) [CRAN]
generics (0.1.1 -> 0.1.2 ) [CRAN]
colorspace (2.0-2 -> 2.0-3 ) [CRAN]
withr (2.4.3 -> 2.5.0 ) [CRAN]
Rcpp (1.0.8 -> 1.0.8.2 ) [CRAN]
dplyr (1.0.7 -> 1.0.8 ) [CRAN]
RcppArmad... (0.10.7.5.0 -> 0.10.8.1.0) [CRAN]
tidyr (1.1.4 -> 1.2.0 ) [CRAN]
.. parsed-literal::
Skipping 1 packages not available: SingleCellExperiment
Installing 15 packages: rlang, magrittr, fansi, crayon, cli, pillar, tidyselect, glue, generics, colorspace, withr, Rcpp, dplyr, RcppArmadillo, tidyr
Updating HTML index of packages in '.Library'
Making 'packages.html' ...
done
.. parsed-literal::
[32m✔[39m [90mchecking for file ‘/tmp/Rtmp5QFgmP/file1e23e6541ee360/DESCRIPTION’[39m[36m[36m (1.2s)[36m[39m
[90m─[39m[90m [39m[90mpreparing ‘harmony’:[39m[36m[39m
[32m✔[39m [90mchecking DESCRIPTION meta-information[39m[36m[39m
[90m─[39m[90m [39m[90mcleaning src[39m[36m[39m
[90m─[39m[90m [39m[90mchecking for LF line-endings in source and make files and shell scripts[39m[36m[39m
[90m─[39m[90m [39m[90mchecking for empty or unneeded directories[39m[36m[39m
[90m─[39m[90m [39m[90mbuilding ‘harmony_0.1.0.tar.gz’[39m[36m[39m
.. code:: r
install_github("immunogenomics/harmony")