2021-04-08 探针与基因id的转换

2021-04-09  本文已影响0人  学习生信的小兔子

探针id和gene id的转换

rm(list=ls())
options(stringsAsFactors = F)
Sys.setenv(LANGUAGE='EN')
library(GEOquery)
library(dplyr)
library(tidyverse)
gset1 <- getGEO('GSE42872',destdir = '.',getGPL = F)
class(gset1)   ##list
gset <- gset1[[1]]
##提取表达矩阵
expr <- gset@assayData[["exprs"]]
exp <- as.data.frame(expr) ##将其转换为数据框类型
colnames(exp)
##下载注释信息 #怎么得到芯片探针与gene的对应关系呢?
##参考:https://www.jianshu.com/p/f6906ba703a0
BiocManager::install('hugene10sttranscriptcluster.db')
library(hugene10sttranscriptcluster.db)
ids <- toTable(hugene10sttranscriptclusterSYMBOL)#toTable这个函数:通过看hgu133plus2.db这个包的说明书知道提取probe_id(探针名)和symbol(基因名)的对应关系的表达矩阵的函数为toTable
head(ids) #head为查看前六行
head(exp)
#exp和ids探针的顺序不一样
exp <- exp[ids$probe_id,]
##此时exp和ids一一对应,顺序相同
exp <- merge(exp,ids,by.x=0,by.y=1)  #将探针和sympol合并在一起
rownames(exp) <- exp$symbol
exp1 <- distinct(exp,symbol,.keep_all = T)
rownames(exp1) <- exp1$symbol
exp1 <-exp1[,-1]  ##完成id转换的最终表达矩阵


上一篇下一篇

猜你喜欢

热点阅读