前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >多个探针对应同一个基因取最大表达量探针极简代码

多个探针对应同一个基因取最大表达量探针极简代码

作者头像
生信技能树
发布2018-12-18 14:52:32
2K0
发布2018-12-18 14:52:32
举报
文章被收录于专栏:生信技能树生信技能树

这个需求实在是太常见了,很多时候我们下载的表达矩阵,都是基因的探针ID作为行名来标记,如下:

这个变量是 dat,一个表达矩阵, 所以需要对探针进行注释,并且筛选。

首先看看注释的结果:

很明显可以看到,很多基因都是有多个探针的,而且每个探针的中位表达量不一样,这里我们可以选择最大的探针保留。

代码很简单:

代码语言:javascript
复制
  dat[1:4,1:4]  
  library(hgu133plus2.db)
  ids=toTable(hgu133plus2SYMBOL)
  head(ids)
  dat=dat[ids$probe_id,]
  dat[1:4,1:4] 
  ids$median=apply(dat,1,median)
  ids=ids[order(ids$symbol,ids$median,decreasing = T),]
  ids=ids[!duplicated(ids$symbol),]
  dat=dat[ids$probe_id,]
  rownames(dat)=ids$symbol
  dat[1:4,1:4]  

过滤后的表达矩阵如下:

可以手动简单检查一些探针的转换情况来验证代码是否准确无误。

不过,如果你连表达矩阵都不知道如何生成,那么你需要补充的基础知识就比较多了。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档