zoukankan      html  css  js  c++  java
  • 【转录组入门】8:差异基因结果注释

    作业要求:

    我们统一选择p<0.05而且abs(logFC)大于一个与众的基因为显著差异表达基因集,对这个基因集用R包做KEGG/GO超几何分布检验分析。

    然后把表达矩阵和分组信息分别作出cls和gct文件,导入到GSEA软件分析。

    基本任务是完成这个分析。

    【1】环境准备

    1 >source(“https://bioconductor.org/biocLite.R”)     # 载入安装工具
    2 >biocLite(“clusterProfiler”)     # 安装包
    3 >biocLite(“org.Hs.eg.db”)    # 物种是人,用Hs;根据物种选择包
    4 >library(clusterProfiler)   # 加载包
    5 >library(org.Hs.eg.db)
    6 
    7 # 初次安装和加载这两个包,会需要额外加载几个别的包
    8 # 分别install.packages("xxx") 或 library("xxx")即可

     【2】gene_id 转换

    GO富集分析必须要用ENTREZID

    最常见的是ENSEMBL,ENTREZID两大类。

    ENTREZID=keg=ncbi-geneid,它们三者id相同

     1 # 查看数据库的id类型
     2 > keytypes(org.Hs.eg.db)
     3 # select()函数和bitr()函数都可以进行id转换
     4 > gene_id <- diff_gene$row.names     # gene_id是character
     5 
     6 > gene <- select(org.Hs.eg.db,keys=gene_id,columns="ENTREZID",keytype="ENSEMBL")
     8 # org.Hs.eg.db: 是数据库类型。   Keys:输入的gene_id文件。
     9 # Columns:是转换后的id类型。   Keytype:是转换前的id类型
    10 
    11 > gene <- bitr(gene_id, OrgDb=org.Hs.eg.db, fromType="ENSEMBL",toType="ENTREZID")
    13 # gene_id:是输入的gene_id文件。   OrgDb:是数据库类型。
    14 # fromType:是转换前的id类型。  toType:转换后的id类型。

    # 上面的“gene_id”也可以通过下面的方式输入:
    > gene_id <- c("ENSG00000153707")

    【3】GO富集分析及画图

    GO富集要使用ENTREZID

     1 # GO富集分析
     2 > ego <- enrichGO(gene,OrgDb,keytype=”ENTREZID”,ont=”MF”,pvalueCutoff=0.01,pAdjustMethod=”BH”,qvalueCutoff=0.05,
     3 minGSSize=1,readable=FALSE)
     4 # gene:是差异基因的id。  Orgdb:物种注释数据库类型
     5 # Ont:有三种,生物过程(BP),细胞组分(CC),分子功能(MF)
     6 # Keytype:geneid类型。   pAdjustMethod:P值校正方法。
     7 
     8 # 实际代码
     9 > ego <- enrichGO(gene=ENTREZID_id2$ENTREZID,OrgDb=org.Hs.eg.db,ont="MF",readable=TRUE)
    10 # 将GO结果写入csv文件
    11 > write.csv(as.data.frame(ego),”enrich-GO.csv”,row.names=F)
    12 
    13 
    14 # 画图
    15 # 气泡图
    16 > dotplot(ego,font.size=10)     
    17 # 网络图
    18 > enrichMap(ego,vertex.label.cex=1.2,
    19 layout=igraph::layout.kamada.kawai)

    【4】KEGG(pathway)分析

     1 # KEGG富集分析 
     2 > ekk <- enrichKEGG(gene,organism=”human”,pavlueCutoff=0.01,qvalueCutoff=0.05,minGSSize=1)
     4 # 物种是人,使用organism=”human”,其他所有物种缩写看官网
     5 KEGG Organisms: Complete Genomes
     6 https://www.genome.jp/kegg/catalog/org_list.html
     7 
     8 # 将KEGG结果写入csv文件
     9 > write.csv(as.data.frame(ekk),”enrich-KEGG.csv”,row.names=F)
    10 
    11 # 画图
    12 > dotplot(ekk,font.size=5)
  • 相关阅读:
    js-20170816-Date对象
    js-20170804-Math对象
    js-20170619-string对象
    微信web开发者工具
    前端开发指南
    接口调试工具DHC
    CSS预处理器
    Weex
    Vue.js
    hbuilder
  • 原文地址:https://www.cnblogs.com/chenpeng1024/p/9260840.html
Copyright © 2011-2022 走看看