前言

做RNA-seq基因表达数据分析挖掘,我们感兴趣的其实是“基因互作”,哪些基因影响了我们这个基因G,我们的基因G又会去影响哪些基因,从而得到基因调控的机制。

直觉确实是很明确的,但是细节处却有很多问题。

我们讨论的到底是基因表达的互作,还是基因产物的互作?

------------

对于蛋白编码基因,它翻译产生蛋白,如果此蛋白不参与转录过程,理论上不可能会影响另一个基因的表达,那也就不存在基因表达的互作的,它们的基因表达被很好的隔离起来了,相互独立,互不影响。

但现在鉴定出了很多调控基因或其他在基因组上的调控序列,比如miRNA、lncRNA等,它们也都需要从基因组上转录出来,然后转录产物会去影响其他基因的表达(影响转录)。这才是基因表达互作,虽然MiRNA、lncRNA不能被称作基因。

------------

基因产物的互作就普遍了,那就是蛋白互作,也就是STRING等数据库里收集的信息。

蛋白互作也容易直观理解些,复杂的多细胞生命体,几乎所有的功能都是靠蛋白来实现的,所以有很多蛋白要互相结合(空间上)在一起来行使自己的功能。

------------

还有一个就是遗传学领域的基因互作,这与生物学的基因互作完全不同,遗传学考虑的是宏观的基因互作,站在表型的基础上。 Novel phenotypes often result from the interactions of two genes。

遗传学的基因互作是生物学基因产物互作的结果。

Defining genetic interaction

GENE INTERACTIONS


STRING database的挖掘

这个数据库绝对是做实验人的宝藏,里面包含了各种蛋白互作关系,不用做实验就有一大堆证据。

IPA了解一下,收费的高端分析软件,大部分就是整合的这个数据库,很多大佬喜欢用IPA来找明星基因,再来讲故事,实例请看之前解读的CSC paper。

首先了解一下STRING里面有哪些文件可以下载:

https://string-db.org/cgi/download.pl?sessionId=yMNmD7s36wS8

选你的物种,减少文件大小,常用的就是互作数据:

PPI | protein-protein interaction | 蛋白互作分析-LMLPHP

一般我们想知道某个蛋白会与哪些其他蛋白互作,以及互作的类型,然后做下游分析,信息都在这几个文件里了。

注:有哪些互作关系需要好好搞清楚,移步help,https://string-db.org/cgi/help.pl?sessionId=yMNmD7s36wS8

Docs » User documentation » Getting started » Evidence

每一个PPI关系的证据来源是不同的,选择你需要的证据。我觉得里面最可靠的就是Experiments, Databases和Text mining了。

当然,我们是高手,能用更简单的方法绝不用复杂的,那么STRING的API了解一下。

用任意脚本语言读以下格式化地址:

https://string-db.org/api/[output-format]/interaction_partners?identifiers=[your_identifiers]&[optional_parameters]

就能得到一个dataframe结果,不用下载,不用筛选,速度更快,随调随用。

实例,我想知道HDAC4的互作蛋白,可以这么抓:

老鼠:Mus%20musculus

url <- "https://string-db.org/api/tsv/interaction_partners?identifiers=HDAC4&species=Homo%20sapiens"
webDf <- read.table(url, header=T)
head(webDf) stringId_A stringId_B preferredName_A preferredName_B ncbiTaxonId score
1 ENSP00000264606 ENSP00000080059 HDAC4 HDAC7 9606 0.934
2 ENSP00000264606 ENSP00000202967 HDAC4 SIRT4 9606 0.809
3 ENSP00000264606 ENSP00000209873 HDAC4 AAAS 9606 0.901
4 ENSP00000264606 ENSP00000209875 HDAC4 CBX5 9606 0.779
5 ENSP00000264606 ENSP00000212015 HDAC4 SIRT1 9606 0.988
6 ENSP00000264606 ENSP00000215832 HDAC4 MAPK1 9606 0.572
nscore fscore pscore ascore escore dscore tscore
1 0 0 0 0.061 0.320 0.90 0.061985
2 0 0 0 0.052 0.166 0.00 0.778000
3 0 0 0 0.058 0.000 0.90 0.000000
4 0 0 0 0.062 0.463 0.54 0.159000
5 0 0 0 0.052 0.415 0.90 0.812000
6 0 0 0 0.000 0.433 0.00 0.276000  

结果解读:

Output fields (TSV and JSON formats):

stringId_ASTRING identifier (protein A)
stringId_BSTRING identifier (protein B)
preferredName_Acommon protein name (protein A)
preferredName_Bcommon protein name (protein B)
ncbiTaxonIdNCBI taxon identifier
scorecombined score
nscoregene neighborhood score
fscoregene fusion score
pscorephylogenetic profile score
ascorecoexpression score
escoreexperimental score
dscoredatabase score
tscoretextmining score

抓其他信息改下API就行了

还有很多工具是基于STRING做富集分析的,也可以了解一下,主要看自己需求。

待续~

05-11 15:12