yundongkk的个人博客分享 http://blog.sciencenet.cn/u/yundongkk

博文

Affymetrix芯片分析:获取差异表达基因系列二

已有 4721 次阅读 2015-4-11 14:13 |系统分类:科研笔记

library(limma)%把limma包载入R中

library(tcltk)%把tcltk包载入R中

library(affy)%把affy包载入R包中


filters <- matrix(c("CEL file", ".[Cc][Ee][Ll]", "All", ".*"), ncol = 2, byrow = T)%生成2*2字符矩阵,用来定义选择文件类型

cel.files <-tk_choose.files(caption = "Select CELs", multi = TRUE,filters = filters, index = 1)%跳出选择文件窗口并选择文件

data.raw <- ReadAffy(filenames = cel.files)%读入四个样品


design <- model.matrix(~-1+factor(c(1,1,2,2)))%构建实验设计矩阵(实验组2个和对照组2个)

colnames(design) <- c("control", "LPS") %实验组和对照组的列名称


eset.rma <- rma(data.raw)%调用RMA算法对数据进行预处理

eset<-exprs(data.raw)%构建样品的基因表达矩阵


fit <- lmFit(eset, design)%线性模型拟合

%%fit1 <- eBayes(fit)%Moderated t-statistic??


contrast.matrix <- makeContrasts(control-LPS, levels=design)%构建对比模型,比较两个实验条件下表达数据

fit1<- contrasts.fit(fit, contrast.matrix)%根据对比模型进行差值计算

fit2 <- eBayes(fit1) %贝叶斯检验


results<-decideTests(fit2, method="global", adjust.method="BH", p.value=0.01, lfc=1.5)%根据P-value对结果进行筛选,得到差异表达基因

summary(results)

vennCounts(results)

vennDiagram(results)


heatDiagram(results,fit2$coef)


x<- topTable(fit2, coef=1, number=10000, adjust.method="BH", sort.by="B", resort.by="M")

write.table(x, file="limma.xls", row.names=F, sep="t")

y <- x[xP.Value < 0.01 & (xlogFC > 1.5 | xlogFC < -1.5& xAveExpr > 10),]








https://blog.sciencenet.cn/blog-424220-881561.html

上一篇:Affymetrix芯片分析:获取差异表达基因系列一
下一篇:Affymetrix芯片分析:获取差异表达基因系列三——SAM
收藏 IP: 124.93.200.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (1 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-19 04:14

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部