GEO表达芯片平台 — GPL14951,注释文件探索过程

最近jimmy老师在学徒群了扔了一个数据挖掘文献图表复现任务,作为老师的新晋小透明学徒,希望可以表现一下,在分析数据集GSE62133时,并没有其平台GPL14951相应的注释包,把这个探索过程分享一下吧,希望可以帮助到大家!

首先是在jimmy老师4年前博客整理的芯片平台对应R包找:(16)芯片探针与基因的对应关系-生信菜鸟团博客2周年精选文章集 的确这个平台无法找到!

探索过程

需要去GEO官网查找

https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GPL14951

通过网站查看探针表格,发现了一些问题:

  • 陌生的探针名(以前大部分都是XXXXX.at)

  • Entrez_Gene_ID、Ensembl_Gene_ID等竟然都是空白

于是就卡住了(PS;实际上是因为学徒经验不够,其实看得ILMN就应该是知道了illumina公司的芯片啦)

空白列

这样,时间过了两三天,重新鼓起勇气继续探索下

查平台的title:Illumina HumanHT-12 WG-DASL V4.0 R2 expression beadchip

搜索这个title,发现了曾老师一个2017年的帖子:http://www.biotrainee.com/thread-899-1-1.html

通过该文章,知道了illuminaHumanv4.db这个注释包

#根据注释包的帮助文档,探索了下illuminaHumanv4.db
library(illuminaHumanv4.db)
x <- illuminaHumanv4ENTREZID
mapped_probes <- mappedkeys(x)
head(mapped_probes, 10)
> head(mapped_probes, 10)
 [1] "ILMN_1343291" "ILMN_1343295" "ILMN_1651209" "ILMN_1651221" "ILMN_1651228"
 [6] "ILMN_1651229" "ILMN_1651230" "ILMN_1651232" "ILMN_1651235" "ILMN_1651237"

这个illumina bead V4芯片的探针就是【ILMN】开头

下载了平台表格,用excel打开

意外发现下面的【空白】都填满了,原来表格下面才是真正的【注释部分】,上面【空白部分】应该是metadata

(PS,这里学徒仍然是错了,上面空白只不过是因为那些探针并不是设计给基因的!)

接下来进行探针基因名转换

anno <- data.table::fread("GPL14951-11332.txt")#读取
colnames(anno)
probe2symbol <- anno[,c("ID","Symbol")]#取需要的列
colnames(probe2symbol) <- c("PROBE_ID", "SYMBOL_ID")#改名,让他适合下面的自定义函数
{
  p2g <- function(eset,probe2symbol){
    library(dplyr)
    library(tibble)
    library(tidyr)
    eset <- as.data.frame(eset)
    p2g_eset <- eset %>% 
      rownames_to_column(var="PROBE_ID") %>% #合并探针的信息
      inner_join(probe2symbol,by="PROBE_ID") %>% #去掉多余信息
      select(-PROBE_ID) %>% #重新排列
      dplyr::select(SYMBOL_ID,everything()) %>% #求出平均数(这边的点号代表上一步产出的数据)
      mutate(rowMean = rowMeans(.[grep("GSM", names(.))])) %>% #去除symbol中的NA
      filter(SYMBOL_ID != "NA") %>% #把表达量的平均值按从大到小排序
      arrange(desc(rowMean)) %>% # symbol留下第一个
      distinct(SYMBOL_ID,.keep_all = T) %>% #反向选择去除rowMean这一列
      dplyr::select(-rowMean) %>% # 列名变成行名
      column_to_rownames(var = "SYMBOL_ID")
    save(p2g_eset, file = "p2g_eset.Rdata")
    return(p2g_eset)
  }
  p2g_eset <- p2g(eset = eset, probe2symbol = probe2symbol)
  load("p2g_eset.Rdata")
}

反思

  • 解决一个问题要抓住其突破点,一旦抓住便会迎刃而解。上述问题的突破点就是寻找平台的title

  • 这是一个通过【检索+意外发现】而解决问题的过程,遇到问题多探索、多思考、多检索,会柳暗花明

收获

  • 填补了对芯片种类的认知空白,以前可能都是用affymetrix系列芯片的数据,现在新增加了illumina,不过本质都是一样的!

  • illuminaHuman类注释包的部分运用

(0)

相关推荐

  • R语言GEO数据挖掘01-数据下载及提取表达矩阵

    欢迎来到医科研,这里是白介素2的读书笔记,跟我一起聊临床与科研的故事, 生物医学数据挖掘,R语言,TCGA.GEO数据挖掘. 这一节的内容包括应用 GEOquery包下载芯片数据,提取表达矩阵,提取m ...

  • 学徒笔记——芯片数据的注释文件获取

    目前芯片数据的分析流程都可以通过AnnoProbe包简单的完成上游分析,包括表达矩阵获取.分组方案的构建和数据注释,但是也存在一些平台的数据无法被该包直接获取.AnnoProbe获取注释信息的方式是通 ...

  • GEO数据挖掘技术可以应用到表达芯片也可以是转录组测序

    第一讲:GEO,表达芯片与R 第二讲:从GEO下载数据得到表达量矩阵 第三讲:对表达量矩阵用GSEA软件做分析 第四讲:根据分组信息做差异分析 第五讲:对差异基因结果做GO/KEGG超几何分布检验富集 ...

  • 第一个万能芯片探针ID注释平台R包

    昨天发布了 GEO数据库中国区镜像横空出世,粉丝们都很happy,因为确实解决了他们的一个拦路虎,以后下载GEO数据再也不用去网吧了.然后开始接近粉丝们的第二个需求,就是探针的ID注释问题.这是一个系 ...

  • 第二个万能芯片探针ID注释平台R包

    整合全部表达芯片平台的soft文件并且提取基因symbol和探针对应关系 前面我们提到过表达芯片探针注释的3种方法,参见:第一个万能芯片探针ID注释平台R包, 并且帮助大家搞定了第一种biocondu ...

  • 第三个万能芯片探针ID注释平台R包

    下载全部表达芯片平台的探针的碱基序列自主注释到基因ID 前面我们提到过表达芯片探针注释的3种方法,参见:第一个万能芯片探针ID注释平台R包, 并且帮助大家搞定了第一种bioconductor包的方法, ...

  • GPL平台的soft文件提供的注释信息到底准确吗

    这个月初,我推出3个R包, 第一个是整合全部的bioconductor里面的芯片探针注释包. 第二个是整合全部GPL的soft文件里面的芯片探针注释包. 第三个是下载全部的GPL的soft文件里面的探 ...

  • GEO的数据注释文件没有基因名肿么破?

    写在前面 我们在处理GEO芯片数据的时候,经常会碰到芯片的数据的注释文件没有提供基因名,只有基因的序列.替代的解决办法就是对所有的注释数据来进行批量的blast,利用注释文件提供的序列来通过blast ...

  • Kitten编程猫的工程文件 bcm,能发布成Android平台的apk文件吗

    根据Kitten编程猫社区的这个帖子: https://shequ.codemao.cn/community/367019 产生的不是可执行文件或者源码,产生的是配置文件,告诉执行文件的框架该怎么做的 ...

  • 华为鸿蒙需不需要适配高通信芯片平台?

    华为鸿蒙需不需要适配高通信芯片平台?