热点新闻
答读者问(8):如何批量查询marker基因(对应的蛋白)会不会在膜上表达?
2023-07-22 02:43  浏览:705  搜索引擎搜索“手机晒展网”
温馨提示:信息一旦丢失不一定找得到,请务必收藏信息以备急用!本站所有信息均是注册会员发布如遇到侵权请联系文章中的联系方式或客服删除!
联系我时,请说明是在手机晒展网看到的信息,谢谢。
展会发布 展会网站大全 报名观展合作 软文发布



image

做实验的朋友们对这个问题应该是很感兴趣的,因为涉及到后续能不能实验验证。

一般的做法是拿基因名或者蛋白名去查文献,查网站。我知道的:uniprotPDBthe human protein atlas都能查到蛋白质表达定位相关的信息。
uniprot为例,假设我想查询CD79B这个基因/蛋白,网站输入基因名,在结果页面的左侧菜单栏,点击Subcellular location




image

之后,蛋白的亚细胞定位就显示出来了:
有两个参考结果:uniprot annotationGO annotation




image




image

两个参考结果的意思差不多,都说的是膜蛋白

但是如果我把这个方法发给他,我内心会不安,因为一个一个查太耗时间了。

所以就写了这篇帖子,教他如何批量查询。
先来看看最初的marker gene表格:




image

然后开整

# install.packages("UniprotR") # BiocManager::install("GenomicAlignments") library(UniprotR) library(tidyverse) library(org.Hs.eg.db) markerdf=read.csv("test_marker_gene.csv",header = T) #Seurat::FindAllMarkers得到的数据框 namedf=clusterProfiler::bitr(markerdf$gene,fromType="SYMBOL", toType=c("UNIPROT"), OrgDb="org.Hs.eg.db") #会有一对多的情况 namedf$s_c="" namedf$go_c="" for (i in 1:nrow(namedf)) { go_cellular_component <- GetProteinAnnontate(ProteinAccList = namedf$UNIPROT[i],columns = "go_c") subcellular_location_res=GetSubcellular_location(ProteinAccList = namedf$UNIPROT[i]) subcellular_location_res=subcellular_location_res[,1] namedf$go_c[i] = go_cellular_component namedf$s_c[i] = subcellular_location_res print(i) } colnames(namedf)[1]="gene" markerdf2=markerdf%>%left_join(namedf,by = "gene")

最后的表格是这样的:





image

代码很容易,使用起来应该没有什么难度。





image

这种批量的方法用到的R包,UniprotR,其实是通过API的方法访问Uniprot网站获取信息。

我上一次讲的如何获取kegg通路的基因列表,也是用的这类方法,涉及到的R包是KEGGREST

并不是每次给读者答疑我都会写帖子,网上很容易搜到答案的,我不想写。

ok,这一期的答疑就到这里,祝大家生活愉快!

往期答疑

答读者问(7):关于doublet

答读者问(6):单细胞TPM矩阵如何分析?

答读者问(5):提取monocle2的拟时序/坐标重新画图

答读者问(4):inferCNV的几个问题

答读者问(2):细胞cluster没有聚在一起;去不去批次效应

答读者问(1):非模式物种找marker;如何根据marker定义细胞类型

发布人:9549****    IP:117.173.23.***     举报/删稿
展会推荐
  • 7
  • 2023-07-22浏览:884
让朕来说2句
评论
收藏
点赞
转发