作者waynecomm021 (waynecomm021)
看板R_Language
标题需要懂R的人帮忙解释一小段晶片微阵列程式码
时间Sat May 17 16:42:29 2014
ctrl + y 可以删除一整行,请将不需要的内容删除
文章分类提示:
- 问题: 当你想要问问题时,请使用这个类别
- 分享: 当你看到别人的心得时,请使用这个类别。版主鼓励你帮版友归纳重点(选择性
)
- 情报: 当你看到消息时,请使用这个类别。版主鼓励你帮版友归纳重点(选择性)
- 心得: 当你自己想要分享经验时,请使用这个类别。
- 讨论: 当你自己已经有答案,但是也想听听版友意见时
问题
[问题类型]:程式谘询
意见调查(我对R 有个很棒的想法,想问问大家的意见)
程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来)
效能谘询(我想让R 跑更快)
经验谘询(我想用R 连接某些资料库,请问大家的经验)
程式谘询
[软体熟悉度]:入门
请把以下不需要的部份删除
新手(没写过程式,R 是我的第一次)
入门(写过其他程式,只是对语法不熟悉)
使用者(已经有用R 做过不少作品)
开发者(有撰写R 的套件经验)新手
[问题叙述]:由於不是很懂R,麻烦懂的人帮我解释一下最下面那段程式码(每一行的设计意义),晶片的位置在这边下载(
http://www.ebi.ac.uk/arrayexpress/files/E-MEXP-569/E-MEXP-569.raw.1.zip)
请简略描述你所要做的事情,或是这个程式的目的
[程式范例]:source("
http://bioconductor.org/biocLite.R")
biocLite("affy")
biocLite("GeneNet")
biocLite("limma")
biocLite("tkWidgets")
biocLite("Biobase")
biocLite("AffyID2GeneID")
source("
http://faculty.ucr.edu/~tgirke/Documents/R_BioCond/My_R_Scripts/GOHyperGAll.txt")
AffyID2GeneID(map =
"ftp://ftp.arabidopsis.org/home/tair/Microarrays/Affymetrix/affy_ATH1_array_elements-2010-12-20.txt")
library(affy)
library(limma)
library(tkWidgets)
library(annaffy)
library(GeneNet)
------------
P_syr_avr<-ReadAffy(widget=TRUE)
-------------------------------
rma_P_syr_avr<-rma(P_syr_avr)
------------------------------
rep.day <- rep(c("A","B"),4)
times <- sort(gl(4,2))
design <- model.matrix(~factor(times) + factor(rep.day))
colnames(design) <- c(as.character(1:4),"B")
cont.matrix <- rbind(0,diag(3),0)
-------------------------------
fit <- lmFit(rma_P_syr_avr,design)
rma <- rma_P_syr_avr
-----------------f-p-value 值 ---DEG
fit2 <- contrasts.fit(fit, cont.matrix)
fit2 <- eBayes(fit2)
modF001 <- fit2$F.p.value[fit2$F.p.value<0.01]
modF025 <- fit2$F.p.value[fit2$F.p.value<0.025]
modF <- fit2$F.p.value
o <- order(modF)
which.A <- seq(1,7,2)
which.B <- seq(2,8,2)
x=cbind(rownames(exprs(rma)),fit2$F.p.value)
write(t(x),"d:/x.txt",ncol=ncol(x),sep="\t")
-----------------f-p-value 值
x<-c()
count_i = length(modF001)
for(count_j in 1: (count_i-1)){
for(count_k in (count_j+1): count_i){
pcc <- cor(exprs(rma)[o[count_j],which.A],exprs(rma)[o[count_k],which.A])
abs_pcc <- abs(pcc)
if(abs_pcc>0.95){
x1<-c(AffyID2GeneID(affyIDs=rownames(exprs(rma))[o[count_j]]),
AffyID2GeneID(affyIDs=rownames(exprs(rma))[o[count_k]]), pcc)
x<-rbind(x,x1)
}
}
}
write(t(x),"d:/481.txt",ncol=ncol(x),sep="\t")
-
---------------------------请帮忙解释以下这段--------------------------------------------
data<-read.table("d:/x2.txt",sep="\t")
head(exprs(rma))
probe1=as.character(data$V1)
exprs(rma)[rownames(exprs(rma))==probe1[3]]
x_481=numeric()
count_i = length(probe1)
for(count_j in 1: count_i){
x_481 =rbind(x_481,c(exprs(rma)[rownames(exprs(rma))==probe1[count_j]]))
}
rownames(x_481)=probel[1:count_i]
library(GeneNet)
pcor.dyn <- ggm.estimate.pcor(t(x_481), method = "dynamic")
arth.edges <- network.test.edges(pcor.dyn,direct=TRUE)
arth.net <- extract.network(arth.edges, method.ggm="number", cutoff.ggm=1200)
nodePP=cbind(arth.net[,1],as.character(probe1[arth.net[,2]]),as.character(probe1[arth.net[,3]]))
write.table(nodePP,"d:/481.txt")
张贴能够重现错误的程式码,可以帮助版友更快的帮你解决问题
程式码可贴於以下网站:
http://ideone.com/
http://codepad.org
http://pastie.org/
http://nopaste.info/
http://pastebin.com/
http://paste.plurk.com
http://gist.github.com/
http://nopaste.csie.org/
[关键字]:
选择性,也许未来有用
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 122.118.21.180
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/R_Language/M.1400316155.A.D46.html
1F:→ andrew43:徵个一小时家教吧。 05/17 17:20
2F:→ yanchenglin:ggm.estimate.pcor network.test.edges extract.netwo 05/17 17:32
3F:→ yanchenglin:rk 看这3个函数的help. 其他应该还好懂 05/17 17:33