富集檢定

使用 R 中的 limma 進行差異表達分析

John Blischak

Instructor

解讀結果

results <- decideTests(fit2)
summary(results)
topTable(fit2, number = 3)
   status
-1   6276
0   11003
1    5004
            symbol entrez  chrom    logFC  AveExpr        t
205225_at     ESR1   2099 6q25.1 3.762901 11.37774 22.68392
209603_at    GATA3   2625  10p15 3.052348  9.94199 18.98154
209604_s_at  GATA3   2625  10p15 2.431309 13.18533 17.59968
                 P.Value    adj.P.Val        B
205225_at   2.001001e-70 4.458832e-66 149.1987
209603_at   1.486522e-55 1.656209e-51 115.4641
209604_s_at 5.839050e-50 4.337052e-46 102.7571
使用 R 中的 limma 進行差異表達分析

生物學資料庫

  • KEGG:Kyoto Encyclopedia of Genes and Genomes(京都基因與基因體百科)

  • Gene Ontology Consortium(GO)

使用 R 中的 limma 進行差異表達分析

富集檢定

在基因集內 不在基因集內
DE 10 90
all 100 900
fisher.test(matrix(c(10, 100, 90, 900), nrow = 2))
Fisher's Exact Test for Count Data

data:  matrix(c(10, 100, 90, 900), nrow = 2)
p-value = 1
alternative hypothesis: true odds ratio is 
                        not equal to 1
95 percent confidence interval:
 0.4490765 2.0076377
sample estimates:
odds ratio
         1
使用 R 中的 limma 進行差異表達分析

富集檢定

在基因集內 不在基因集內
DE 30 70
all 100 900
fisher.test(matrix(c(30, 100, 70, 900), nrow = 2))
Fisher's Exact Test for Count Data

data:  matrix(c(30, 100, 70, 900), nrow = 2)
p-value = 1.88e-07
alternative hypothesis: true odds ratio is 
                        not equal to 1
95 percent confidence interval:
 2.306911 6.320992
sample estimates:
odds ratio
  3.850476
使用 R 中的 limma 進行差異表達分析
head(fit2$genes, 3)
          symbol entrez   chrom
1007_s_at   DDR1    780  6p21.3
1053_at     RFC2   5982 7q11.23
117_at     HSPA6   3310    1q23
entrez <- fit2$genes[, "entrez"]

enrich_kegg <- kegga(fit2, geneid = entrez, species = "Hs")
topKEGG(enrich_kegg, number = 3)
                         Pathway    N  Up Down         P.Up       P.Down
path:hsa04110         Cell cycle  115  30   82 6.192773e-01 5.081518e-12
path:hsa05166   HTLV-I infection  233  55  135 8.959082e-01 9.285167e-09
path:hsa01100 Metabolic pathways 1033 350  373 3.175782e-08 9.969693e-01
使用 R 中的 limma 進行差異表達分析

檢定 GO 富集

enrich_go <- goana(fit2, geneid = entrez, species = "Hs")

topGO(enrich_go, ontology = "BP", number = 3)
                             Term Ont    N  Up Down P.Up       P.Down
GO:0002376  immune system process  BP 1935 426  914    1 7.925179e-32
GO:0006955        immune response  BP 1236 230  619    1 3.625368e-29
GO:0045087 innate immune response  BP  645 113  346    1 1.635833e-22
使用 R 中的 limma 進行差異表達分析

注意事項

  • 別過度解讀

  • 對上調與下調要保持懷疑

  • 背景基因集應只包含被檢測的基因

  • 還有進階方法可用,包括 limma 的 cameraroast 函式

使用 R 中的 limma 進行差異表達分析

一起來練習吧!

使用 R 中的 limma 進行差異表達分析

Preparing Video For Download...