前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言:TCGA数据分析一

R语言:TCGA数据分析一

作者头像
努力在北京混出人样
发布2019-02-18 15:17:01
1.2K0
发布2019-02-18 15:17:01
举报

引言

我最近在做TCGA数据分析,在处理中遇到的问题及其收获。主要包括:

  • case ID 大小写处理
  • 数据的匹配

涉及到的函数有:

小写
  • tolower
大写
  • toupper
单一的局部匹配
  • grep
多个全局匹配
  • match
保留固定长度的字符
  • substr

大小写处理

在RANseqGene中case ID 为大写的,而Clincial中为小写的。需要对case ID 做转换。

方案一:大写变小写
tolower(colnames(LUAD_RNAseqGene))
方案二:小写变大写
toupper(rownames(LUAD_Clinical))

匹配

grep

在找tumor 的case ID 时,需要采用这个函数将所有的tumor 找出来。

grep("\\.01A",colnames(LUAD_RNAseqGene))

对于normal的查找类似处理。

substr

由于case ID 很长,我们只需要前面的12或16个字符来作为识别验证。

substr(colnames(LUAD_Clinical),1,12) # 保留12位

match

RNA中映射到Clinical中,采用这个函数

例子
#定义a
> a<-c(1,2,3,4)
#定义b
> b<-c(3,4,5,6,7)
#匹配
> match(a,b)  
[1] NA NA  1  2  
#a和b中共同的元素
> a[-which(is.na(match(a,b)))]
[1] 3 4
#a和b中共同的元素
> b[match(a,b)]
[1] NA NA  3  4
#a中有的元素而不在b中
> a[is.na(match(a,b))]
[1] 1 2

注:match的结果长度与a保持一致,NA表示该位置元素不在b中,非NA表示该元素在b中的位置。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016年08月13日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 引言
    • 小写
      • 大写
        • 单一的局部匹配
          • 多个全局匹配
            • 保留固定长度的字符
            • 大小写处理
              • 方案一:大写变小写
                • 方案二:小写变大写
                • 匹配
                  • grep
                    • substr
                      • match
                        • 例子
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档