前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >结肠腺癌细胞系过表达apoM的芯片数据分析

结肠腺癌细胞系过表达apoM的芯片数据分析

作者头像
生信技能树
发布2022-07-26 10:27:19
6701
发布2022-07-26 10:27:19
举报
文章被收录于专栏:生信技能树生信技能树

比如GSE162325这个数据集,它比较新:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE162325,所以如果你使用我的AnnoProbe包里面的 geoChina("GSE162325") 函数会失败,因为我最近没有空去同步这些新的表达量芯片数据集。

而且平台好奇怪:GPL23126 [Clariom_D_Human] Affymetrix Human Clariom D Assay [transcript (gene) version] ,不过是很标准的两个分组:

代码语言:javascript
复制
GSM4949747 NC-1
GSM4949748 NC-2
GSM4949749 NC-3
GSM4949750 Overexpression-1
GSM4949751 Overexpression-2
GSM4949752 Overexpression-3

因为比较新,所以没有被 AnnoProbe 收录 ,我是自己去其页面下载了 GSE162325_series_matrix.txt.gz 文件 , 网页地址是:

  • https://ftp.ncbi.nlm.nih.gov/geo/series/GSE162nnn/GSE162325/matrix/GSE162325_series_matrix.txt.gz

然后使用 GEOquery 加载它 ,如下所示的代码 :

代码语言:javascript
复制
rm(list = ls())  ## 魔幻操作,一键清空~
options(stringsAsFactors = F)

getOption('timeout')
options(timeout=10000)

library(AnnoProbe)
library(GEOquery) 
if(F){
  gset <- geoChina("GSE162325")
  gset
}

gset <- getGEO("GSE162325",
               filename = 'GSE162325_series_matrix.txt.gz',
               AnnotGPL = FALSE, getGPL = FALSE)
               
# trying URL 'https://ftp.ncbi.nlm.nih.gov/geo/series/GSE162nnn/GSE162325/matrix/GSE162325_series_matrix.txt.gz'
#  cannot open URL 'https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?targ=self&acc=GPL23126&form=text&view=full'

可以看到,确实比较麻烦,而且表达量芯片对应的探针信息也需要自己注释:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GPL23126

可以看到:

探针信息也需要自己注释

在 https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?targ=self&acc=GPL23126&form=text&view=full 可以下载一个 GPL23126.txt的文本文件,大约是1G,内容有点多,所以需要简单的处理一下,我这里使用了shell命令:

代码语言:javascript
复制
cut -f 1,8 GPL23126.txt |grep -v "^!"|grep -v "^#" >  GPL23126_ids.txt

然后又是R里面的解析即可,如下所示的代码:

代码语言:javascript
复制

library(data.table)
library(stringr)
# b=fread('GPL23126.txt',data.table = F)
# cut -f 1,8 GPL23126.txt |grep -v "^!"|grep -v "^#" >  GPL23126_ids.txt
b=fread('GPL23126_ids.txt',data.table = F)
head(b)
ids=data.frame(
  ID=b$ID,
  symbol=str_split(b$gene_assignment,' // ',simplify = T)[,2]
)
head(ids)
ids=ids[ids$symbol != '',]
dat=dat[rownames(dat) %in% ids$ID,]
ids=ids[match(rownames(dat),ids$ID),]
head(ids) 

colnames(ids)=c('probe_id','symbol')  
ids$probe_id=as.character(ids$probe_id)
rownames(dat)=ids$probe_id
dat[1:4,1:4] 

ids=ids[ids$probe_id %in%  rownames(dat),]
dat[1:4,1:4]   
dat=dat[ids$probe_id,] 

后续也是常规分析,如下所示:

两个分组很明显

后面的步骤我就不多说了!

GEO数据库里面的表达量芯片数据处理,主要的难点是表达量矩阵获取和探针的基因名字转换,搞定后只需要一定的生物学背景对数据进行合理的分组后就是标准的差异分析,富集分析。主要是参考我八年前的笔记:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-07-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档