第一次接触基因评分是在一篇文章中,也不知道这样的叫法对不对,作者选定了几个炎症基因,利用seurat包的一个打分函数AddModuleScore,依据基因的平均表达水平进行分析,最后得到的score称为炎症分数,其实这样的叫法有点欠缺,但是有这样的做法。(演示数据没有意义)
选择基因进行计算。
DefaultAssay(immune) <- “RNA”
cd_features <- list(c(
‘TNF’,
‘CCL2’,
‘CCL3’,
‘CCL4’,
‘CXCL10’,
‘S100A8’,
‘CXCL1’
))
Inscore <- AddModuleScore(immune,
features = cd_features,
ctrl = 100,
name = “CD_Features”)
colnames(Inscore@meta.data)
colnames(Inscore@meta.data)[27] <- ‘Inflammatory_Score’
其实构建了一个Inscore的seurat对象,对其进行可视化。
VlnPlot(Inscore,features = ‘Inflammatory_Score’,
pt.size = 0, adjust = 2,group.by = “orig.ident”)
将其映射到UMAP,更加直观。
library(ggplot2)
mydata<- FetchData(Inscore,vars = c(“UMAP_1”,“UMAP_2”,“Inflammatory_Score”))
a <- ggplot(mydata,aes(x = UMAP_1,y =UMAP_2,colour = Inflammatory_Score))+
geom_point(size = 1)+scale_color_gradientn(values = seq(0,1,0.2),
colours = c(‘#333366’,“#6666FF”,‘#CC3333’,‘#FFCC33’))
a+ theme_bw() + theme(panel.grid.major = element_blank(),
panel.grid.minor = element_blank(), axis.line = element_line(colour = “black”),
panel.border = element_rect(fill=NA,color=“black”, size=1, linetype=“solid”))
箱线图展示不同组织之间的评分差异。
data<- FetchData(Inscore,vars = c(“group”,“Inflammatory_Score”))
ggplot(data, aes(x=group,y=
Inflammatory_Score
)) +
theme_bw()+RotatedAxis()+
theme(panel.grid = element_blank(),
axis.text.x=element_text(angle=10,hjust = 1,vjust=0.5))+
labs(x=NULL,y=NULL,title = “Regulation of necroptotic process”)+ geom_jitter(col=“#00000033”, pch=19,cex=2.5, position = position_jitter(0.2))+
geom_boxplot(position=position_dodge(0),aes(color = factor(group)))+
NoLegend()+theme(plot.title = element_text(hjust = 0.5)) #也就加上这一行,标题居中
=======================================================================
AddModuleScore函数仅仅是对选定的基因进行评分,其意义有限。而另一种对基因集的打分方式—AUCell,可以鉴定某个通路活跃的基因集在细胞群上的展示,也可以理解为对通路活性的评分。初次看到这个还是在一篇NM的文章里,用了大量的AUCell分析,可以学习一下。
首先安装AUCell这个包,并加载相关R包。
if (!requireNamespace(“BiocManager”, quietly = TRUE))
install.packages(“BiocManager”)
BiocManager::install(“AUCell”,force = TRUE)
library(AUCell)
library(clusterProfiler)
对细胞表达矩阵排列,下载GSEA基因集文件,网址:http://www.gsea-msigdb.org/gsea/downloads.jsp,选择自己需要关注的板块。进行评分计算。
cells_rankings <- AUCell_buildRankings(immune@assays
RNA@data) Hallmarker <- read.gmt("h.all.v7.5.1.symbols.gmt") geneSets <- lapply(unique(Hallmarker
RN
A
@
d
a
t
a
)
H
a
ll
ma
r
k
er
<
−
re
a
d
.
g
m
t
(
"
h
.
a
ll
.
v
7.5.1.
sy
mb
o
l
s
.
g
m
t
"
)
g
e
n
e
S
e
t
s
<
−
l
a
ppl
y
(
u
ni
q
u
e
(
H
a
ll
ma
r
k
er
term), function(x){print(x);Hallmarker
g
e
n
e
[
H
a
ll
ma
r
k
er
term == x]})
names(geneSets) <- unique(Hallmarker$term)
cells_AUC <- AUCell_calcAUC(geneSets, cells_rankings, aucMaxRank=nrow(cells_rankings)*0.1)
选定某一个需要关注的通路,进行可视化。
##set gene set of interest here for plotting
geneSet <- “HALLMARK_TNFA_SIGNALING_VIA_NFKB”
aucs <- as.numeric(getAUC(cells_AUC)[geneSet, ])
immune$AUC <- aucs
library(ggraph)
ggplot(data.frame(immune@meta.data, immune@reductions$umap@cell.embeddings), aes(UMAP_1, UMAP_2, color=AUC)
) + geom_point( size=1.5
) + scale_color_viridis(option=“A”) + theme_light(base_size = 15)+labs(title = “TNFA_SIGNALING_VIA_NFKB”)+
theme(panel.border = element_rect(fill=NA,color=“black”, size=1, linetype=“solid”))+
theme(plot.title = element_text(hjust = 0.5))
以上就是今天的分享了,关键是要找到合适的基因应用到具体的研究,找好需要的基因集。
————————————————
版权声明:本文为CSDN博主「TS的美梦」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42090739/article/details/123549020
第一次接触基因评分是在一篇文章中,也不知道这样的叫法对不对,作者选定了几个炎症基因,利用seurat包的一个打分函数AddModuleScore,依据基因的平均表达水平进行分析,最后得到的score称为炎症分数,其实这样的叫法有点欠缺,但是有这样的做法。(演示数据没有意义)选择基因进行计算。DefaultAssay(immune) <- “RNA”cd_features <- list(c(‘TNF’,‘CCL2’,‘CCL3’,‘CCL4’,‘CXCL10’,‘S100A8’
Cirrocumulus是用于大规模单细胞基因组数据的交互式可视化工具,具有以下功能:
在笔记本电脑,本地服务器,云VM或Google App Engine上运行
查看覆盖在图像上的空间转录组学数据
在URL中共享当前的可视化状态
与协作者安全共享数据集
创建点图,热图和小提琴图,以探索分类变量和表达之间的关系
探索由或 / 生成的完整差异表达结果
交互式创建和共享“ AND”或“ OR”过滤器
实时协作注释单元格类型
从预定义列表中快速加载多个功能
同时浏览多个功能和嵌入
快速交互探索数百万个单元的2和3维嵌入,包括缩放,平移,旋转(3-d)和套索工具
保存出版物质量图像
高度可定制的-例如,设置颜色图,点大小或是否对3d嵌入使用雾化以淡化远处的点
以 , , 或格式可视化数据集
安装软件包:
pip install cirrocumulus
通过命令行启动卷积云
相关性分析
add
module
_ns7d_dataframe与PAGE_enrichments相关性
add
module
score
得到的每个细胞
评分
与page_enrichments得到的每个细胞
评分
的相关性
library(patchwork)
library(ggplot2)
library(ggalluvial)
library(svglite)
library(
Se
urat
)
library(openxlsx)
library(Hmisc)
#https://www.jianshu.com/p/c
Add
Module
Score
_bulk <- function (object, features, nbin = 24, ctrl = 100,
k = FAL
SE
, name = "Cluster",
se
ed = 2022)
se
t.
se
ed(
se
ed = 2022)
features <- lapply(X = features, FUN = function(x) {.
scTyper:用于单细胞RNA-
se
q数据的细胞分型分析的综合管道
scTyper是用于细胞分型和scRNA-
Se
q数据分析的综合管道。 它已经配备了两个单元格类型标记数据库,例如scTyper.db,
Cell
Marker。 值得注意的是,该数据库中收集了恶性细胞,与癌症相关的成纤维细胞和浸润肿瘤的T细胞的标志物,这将有助于分析癌症组织的数据。 另外,scTyper提供了三种定制的方法来估计细胞类型标记的表达,包括最近的模板预测(NTP),基因组富集分析(G
SE
A)和平均表达值。 在scTyper中还实现了经过改进的DNA拷贝数推断方法(inferCNV),该方法可用于恶性细胞的分型。 该软件包还支持来自10X Genomics的
Cell
Ranger的数据预处理管道。 还实现了用于分析摘要的报告系统,该系统可以促进用户执行可重复的分析。
2.工作流程
scTyper由“ Q
“Idea
add
module
” 可以理解为“增加模块的创意”。在软件开发领域,模块是指问题领域的某个子要素或处理某种功能的独立部分。而创意则是指新的想法,可以促进创新和进步。因此,“idea
add
module
”可以解释为增加新的独立部分或功能的创意。
软件开发者在开发一个项目的过程中,经常会面对需求的改变或新的功能的添加。这就需要增加新的模块来实现这些改变或添加的功能。对于软件开发者而言,他们可以通过提出创新的想法来改进和增加新的模块来满足客户需求。这些创意中包括优化算法、减少计算时间、防止安全漏洞等等。
软件产品的成功与否常常取决于其模块的质量和功能的丰富性,而创新的想法是保证模块质量和功能丰富性的关键。因此,在软件开发过程中,提出并实施创新的想法来增加模块是十分重要的。此外,创意不仅可以增加模块的数量和功能,同时也可以改善用户的体验、增强软件产品的竞争优势等等。