美文网首页统计基因表达相关性分析
用R语言分析:表达矩阵样本的相关性及可视化

用R语言分析:表达矩阵样本的相关性及可视化

作者: mayoneday | 来源:发表于2019-03-30 21:00 被阅读349次

    一.读取数据

    library(airway)
    #Biocductor R包为三种:1.功能函数包2.数据包3.注释包(芯片基因之间的转换)
    #此为中的一种,为数据包
    data(airway)#加载数据
    exprSet=assay(airway)#获取表达矩阵,默认airway获取表达矩阵就是assay,没有原因的
    colnames(exprSet)#看表达矩阵的列名
    dim(exprSet)#查看表达矩阵的维度
    

    二.设定分组信息

    group_list=colData(airway)[,3]#得出分组信息
    tmp=data.frame(group_list)#把group_list向量变为数据框tmp
    row.names(tmp)=colnames(exprSet)
    #把tmp的行名改为exprSet的列名
    

    三.筛选有意义的基因判断相关性

    筛选基因之后进行相关性计算,去掉基因中:有3个以上为表达量0的样本的基因

    exprSet=exprSet[apply(exprSet,1,function(x)sum(x>1)>5),]
    ##分别对数据中每一行的数据进行一个什么运算,1代表行,2代表列
    dim(exprSet)
    exprSet=log(edgeR::cpm(exprSet)+1)
    dim(exprSet)
    exprSet=exprSet[names(sort(apply(exprSet,1,mad),decreasing = T)[1:500]),]
    #按照mad筛选前500个基因
    #MAD(Median absolute deviation)绝对中位值.
    #MAD:就是先求出给定数据的中位数(注意并非均值)然后原数列的每个值与这个中位数求出绝对差,然后新数列的中位值就是MAD
    

    四.进行相关性计算

    M=cor(log2(exprSet+1))#
    

    五.画出相关性数据的热图

    pheatmap::pheatmap(M,annotation_col = tmp)
    
    Rplot02.jpeg

    最后

    感谢jimmy的生信技能树团队!

    感谢导师岑洪老师!

    感谢健明、孙小洁,慧美等生信技能树团队的老师一路以来的指导和鼓励!

    特别注明:此文中编码来自生信技能树健明老师

    相关文章

      网友评论

        本文标题:用R语言分析:表达矩阵样本的相关性及可视化

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