专栏首页生信小驿站一文解决大批量基因相关性分析

一文解决大批量基因相关性分析

目的是为了找出表达矩阵中有哪些基因与目的基因有相关性。

  • 下载数据
#=======================================================


#=======================================================

library(GEOquery)

rm(list=ls())

library(dplyr)

library(tidyr)

library(Biobase)

library(limma)


setwd('D:\\SCIwork\\F23\\GSE48780')


gsename = "GSE48780"

# 下载基因芯片数据,destdir参数指定下载到本地的地址
gse<- getGEO(gsename, destdir = ".") 
##根据GSE号来下载数据,下载_series_matrix.txt.gz


gpl<- getGEO('GPL570', destdir = ".") 
##根据GPL号下载的是芯片设计的信息, soft文件

gse  <- getGEO(filename = 'GSE48780_series_matrix.txt.gz')

gpl <- getGEO(filename = 'GPL570.soft')



# 查看列名
colnames(Table(gpl))

Table(gpl)[1:10,1:6] # 前10行前6列信息



gpl <- gpl@dataTable@table

colnames(gpl)



gpl <- gpl %>%
  
  dplyr::select(ID, "Gene Symbol")



write.csv(gpl,"GPL.csv", row.names = F)

# gse中的行名ID与gene name的对应关系
genename = read.csv("GPL.csv")


genename <- genename%>%
  tidyr::separate(Gene.Symbol,
                  into = c('Gene', 'Symbol'),
                  sep='\\///')%>%
  dplyr::select(ID,Gene )




##########################################################################################
## 
###########################################################################################



setwd('D:\\SCIwork\\F23\\GSE48780')


# 构建表达矩阵
exprSet <- as.data.frame(exprs(gse)) # 得到表达矩阵,行名为ID,需要转换


# 转换ID为gene name
exprSet$ID = rownames(exprSet)

express = merge( x=genename, y=exprSet, by="ID")

express$ID = NULL

express[which(is.na(express),arr.ind = T)]<-0 #结合which进行缺失替代



exprSet <- aggregate(x = express[,2:ncol(express)],
                     by = list(express$Gene),
                     FUN = max)
head(exprSet)


exprSet <- as.data.frame(exprSet)

exprSet <-exprSet[-1,]


names(exprSet)[1] <- 'ID'

rownames(exprSet) <- exprSet$ID

exprSet$ID <- NULL

write.csv(exprSet, file = 'exprSet.csv')

save(exprSet, file = 'exprSet.Rdata')

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 单基因生信分析流程(6)单基因相似性分析

    用户1359560
  • 一文解决大量基因的生存分析并作图

    这两篇纯生信文章都是对单个基因或者所有单个marker做生存分析,目的是找到其中能够影响患者生存的marker或者基因(包括miRNA,lncRNA,mRNA等...

    用户1359560
  • 三阴性乳腺癌提取和分析

    三阴性乳腺癌是指癌组织免疫组织化学检查结果为雌激素受体(ER)、孕激素受体(PR)和原癌基因Her-2均为阴性的乳腺癌。这类乳腺癌占所有乳腺癌病理类型的10.0...

    用户1359560
  • GEO数据挖掘-第一期-胶质母细胞瘤(GBM)

    lncRNAs PVT1 and HAR1A are prognosis biomarkers and indicate therapy outcome for...

    用户6148842
  • GEO数据挖掘-第一期-胶质母细胞瘤(GBM)

    lncRNAs PVT1 and HAR1A are prognosis biomarkers and indicate therapy outcome for...

    生信技能树
  • 极客DIY:制作一款属于自己的街机

    还记得那些给人带来乐趣的街机吗?你是不是也想拥有一款属于自己的街机呢?如果你有想法,那么就请看看我们的极客大神是如何DIY属于自己的街机的吧,相信你会大呼过瘾的...

    FB客服
  • 10个实用的机器学习建议

    原文:https://medium.com/modern-nlp/10-great-ml-practices-for-python-developers-b08...

    材ccc
  • JS中的原型和原型链

    JavaScript规定,每一个函数都有一个prototype对象属性,指向另一个对象。prototype对象属性的所有属性和方法都会被构造函数的实例继承。这意...

    Cloud-Cloudys
  • 20个免费和开源数据可视化工具

    数据可视化正在帮助全球公司识别模式,预测结果并提高业务回报。可视化是数据分析的一个重要方面。简而言之,数据可视化以可视格式传达表格或空间数据的结果。图像有能力吸...

    February
  • 我最近在 GitHub 上发现的几个好项目

    最近小 G 在各大平台分享了一些蛮优质的开源项目,其中一部分来自于水友自荐,今天刚好周五,借此机会跟大家简单汇总一下,希望大家喜欢。

    GitHubDaily

扫码关注云+社区

领取腾讯云代金券