### 加载安装包
library(GSEABase)
library(clusterProfiler)
## devtools::install_github("GSEA-MSigDB/GSEA_R")
library(GSEA)
library(GSVA)
#######每个细胞的GSVA-------------
m.cell <- as.matrix(sce2@assays$RNA@scale.data)
es.dif <- gsva(m.cell, gene_set,kcdf="Gaussian", mx.diff=TRUE)
## 将GSVA值整合到metadata中
identical(rownames(sce2@meta.data),colnames(es.dif))
MVA_GSVA <- es.dif %>%
t() %>%
as.data.frame()
identical(rownames(sce2@meta.data),rownames(MVA_GSVA))
sce2$MVA_GSVA <- MVA_GSVA[,1]
colnames(sce2@meta.data)
## 提取矩阵,构建分组信息
annotation_col <- sce2@meta.data[,"cell_type"]
p1 <- arrange(annotation_col,cell_type)
es.dif1 <- as.data.frame(es.dif)
es.dif2 <- es.dif1[,rownames(p1)] #对
es.dif3 <- as.matrix(es.dif2)
pheatmap::pheatmap(es.dif3[20:40,], #热图的数据
cluster_rows = F,#行聚类
cluster_cols =F,#列聚类,可以看出样本之间的区分度
annotation_col = annotation_col,
show_colnames=F,
scale = "row", #以行来标准化,这个功能很不错
color =colorRampPalette(c("#FF7744", "white","#AAAAAA","#0044BB"))(100))