美文网首页生物信息学WGCNA专刊R语言做生信
WGCNA如何从module中挖掘关键基因

WGCNA如何从module中挖掘关键基因

作者: 生信修炼手册 | 来源:发表于2018-11-22 15:36 被阅读3次

    欢迎关注”生信修炼手册”!

    识别到与表型数据相关的modules之后,还可以在该modules中进一步筛选基因,为了方便筛选,对于每个基因定义了以下三个统计量

    1.  connectivity

    连接度,在之前的文章中,简单提过这个概念,类似于网络中节点的degree的概念,只不过在加权共表达网络中,由于每条边代表两个基因间的相关性的大小,对应一个数值,所以一个基因在共表达网络中的连接度定义为与该基因相连的所有边的数值之和。

    另外,根据相连的基因是否和该基因位于同一个module, 又可以将边分为两类,和该基因位于同一个module内,定义为within, 位于不同的modules, 定义为out。在WGCNA中,可以通过intramodularConnectivity函数计算连接度,用法如下

    # 计算基因间的邻接值
    ADJ1=abs(cor(datExpr,use="p"))^6
    
    #计算连接度
    Alldegrees1=intramodularConnectivity(ADJ1, colorh1)

    计算的结果如下

    > head(Alldegrees1)
    kTotal kWithin kOut kDiff
    Gene1 31.80186 28.37595 3.425906 24.95005
    Gene2 28.88249 26.47896 2.403522 24.07544
    Gene3 25.38600 23.11852 2.267486 20.85103

    KTotal代表该基因的所有边的连接度,KWithin代表和该基因位于同一个module下的边的连接度,KOut代表和该基因位于不同module下的边的连接度,所以KTotalKWithinKOut之和,KDiff代表KWithinKOut的差值。

    在module中,会存在hub gene的概念,所谓的hub gene, 就是该module下连接度最大的基因,注意此时只考虑位于该module下的边,就是上文的KWithin

    2. module member-ship

    简称MM, 将该基因的表达量与module的第一主成分,即module eigengene进行相关性分析就可以得到MM值,所以MM值本质上是一个相关系数,如果基因和某个module的MM值为0,说明二者根本不相关,该基因不属于这个module; 如果MM的绝对值接近1,说明基因与该module相关性很高。

    在WGCNA中,计算基因与module之间的MM值的代码如下

    datKME = signedKME(
    datExpr,
    datME,
    outputColumnName="MM.")

    第一个参数为基因表达量,第二个参数为Module Eigengene值,结果如下

    > head(datKME)
    MM.blue MM.brown MM.green MM.grey MM.turquoise MM.yellow
    Gene1 0.6830511 0.11547756 -0.007124794 0.2840109 0.9481457 0.09588170
    Gene2 0.6342657 0.02257975 0.080277091 0.3029967 0.9356343 0.06889483
    Gene3 -0.6198067 -0.12531203 0.008372054 -0.2776929 -0.9121710 -0.17852211
    Gene4 0.5966736 0.06469079 0.049862112 0.2671967 0.9052030 0.11707603
    Gene5 0.6642214 0.14369720 -0.017975774 0.2442237 0.9017972 -0.01038067
    Gene6 -0.6018161 -0.15167072 0.006667131 -0.2053897 -0.9192597 -0.17138960

    3. gene signigicancer

    简称GS, 将该基因的表达量与对应的表型数值进行相关性分析,最终的相关系数的值就是GS, GS反映出基因表达量与表型数据的相关性,计算GS的代码如下

    GS1=as.numeric(cor(y,datExpr, use="p"))

    通过以上三个量化指标,可以方便对module下的基因进行筛选。通常情况下,通过module和表型数据的相关性分析,我们可以筛选得到和感兴趣的某一表型相关的具体的modules,在该module下面深入挖掘基因时,可以通过MMGS两个指标作为过滤手段,示例如下

    FilterGenes= abs(GS1)> .2 & abs(datKME$MM.brown)>.8

    假设brown是我们找到的和表型高度相关的module, 其中的关键基因可以定义为和brown这一表型的GS值大于0.2,而且MM值大于0.8的基因。筛选出关键基因后,可以通过功能富集分析进一步挖掘其功能。

    ·end·

    —如果喜欢,快分享给你的朋友们吧—

    扫描关注微信号,更多精彩内容等着你!

    相关文章

      网友评论

        本文标题:WGCNA如何从module中挖掘关键基因

        本文链接:https://www.haomeiwen.com/subject/nfvlqqtx.html