---标题:“第3天 - 基因表达”输出:html_document ---加载[geoquery](https://biocidodder.org/package/geoquery)包。````{r}库(地理查询)```get the data``````````````````````````````````````````````````````````````````````````````gse20986 / gse20986_raw.tar“,exdir =”data“)```gunzipping数据```{r} cels = list.files(”数据/“,模式=”[gz]“)sapply(粘贴(”数据“,cels,sep =”/“),gunzip)```创建您的permodata``` {r} phenodata =矩阵(rep(list.files(”data“),2),ncol = 2)类(phenodata)Phenodata < - As.Data.frame(Phenodata)Colnames(Phenodata)< - C(“名称”,“文件名”)Penodata $ Targets < - C(“Iris”,“Retina”,“Retina”,“Iris”,“视网膜”,“虹膜”,“脉络膜”,“choroid”,“脉络膜”,“huvec”,“huvec”,“huvec”,“huvec”)write.table(phenodata,“data / phenodata.txt”,quote = f,sep =“\ t”,row.names = f)`````{r}库(simpleaffy)celfiles < - read.affy(covdesc =“penodata.txt”,path =“data”)boxplot(celfiles)图书馆(rcolorbrewer)cols = brewer.pal(8,“set1”)ESET < - exprs(Celfiles)样本< - celfiles $ targets colnames(ESET)colnames(ESET)< - Samples Boxplot(Celfille,Col = Cols,拉斯= 2)的距离< - DIST(吨(ESET),方法= “最大”)簇< - hclust(距离)情节(簇)``````{R}需要(simpleaffy)要求(affyPLM)celfiles.gcrma= GCRMA(CEFILES)PAR(mfrow = C(1,2))Boxplot(Celfiles.gcrma,Col = Col,LAS = 2,Main =“后标准化”);boxplot(celfiles,col = cols,las = 2,main =“预归一化”)dev.off()距离< - dist(t(exprs(celfiles.gcrma)),方法=“最大”)集群< - hclust(距离)绘图(群集)``````{R}库(林马)Phenodata样本< - as.factor(样本)设计< - model.matrix(〜0 +样本)colnames(设计)colnames(设计) <- c("choroid", "huvec", "iris", "retina") design contrast.matrix = makeContrasts( huvec_choroid = huvec - choroid, huvec_retina = huvec - retina, huvec_iris <- huvec - iris, levels = design) fit = lmFit(celfiles.gcrma, design) huvec_fit <- contrasts.fit(fit, contrast.matrix) huvec_ebay <- eBayes(huvec_fit) library(hgu133plus2.db) library(annotate) probenames.list <- rownames(topTable(huvec_ebay, number = 100000)) getsymbols <- getSYMBOL(probenames.list, "hgu133plus2") results <- topTable(huvec_ebay, number = 100000, coef = "huvec_choroid") results <- cbind(results, getsymbols) ``` To make thresholds ```{r} summary(results) results$threshold <- "1" a <- subset(results, adj.P.Val < 0.05 & logFC > 5) results[rownames(a), "threshold"] <- "2" b <- subset(results, adj.P.Val < 0.05 & logFC < -5) results[rownames(b), "threshold"] <- "3" table(results$threshold) ``` To make ggplot ```{r} library(ggplot2) volcano <- ggplot(data = results, aes(x = logFC, y = -1*log10(adj.P.Val), colour = threshold, label = getsymbols)) volcano <- volcano + geom_point() + scale_color_manual(values = c("black", "red", "green"), labels = c("Not Significant", "Upregulated", "Downregulated"), name = "Key/Legend") volcano + geom_text(data = subset(results, logFC > 5 & -1*log10(adj.P.Val) > 5), aes(x = logFC, y = -1*log10(adj.P.Val), colour = threshold, label = getsymbols) ) ``` [GEO Link](http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE20986)