前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >按照列筛选数据框不容易那么按照行就容易吗

按照列筛选数据框不容易那么按照行就容易吗

作者头像
生信技能树
发布2020-02-20 14:42:35
6740
发布2020-02-20 14:42:35
举报
文章被收录于专栏:生信技能树生信技能树

开始正式教程分享之前,先公布一个好消息,腾讯云的排行榜显示我们生信技能树是平台全国排名第123位有影响力的自媒体,还有一个证书:

前面我出过一个考题,是对GEO数据集的样本临床信息,根据列进行筛选,比如:

代码语言:javascript
复制
rm(list=ls())
options(stringsAsFactors = F)
library(GEOquery)
eset=getGEO('GSE102349',getGPL = F)
pd=pData(eset[[1]])

就会下载一个表达矩阵,有113个病人(行),记录了57个临床信息(列),很明显,有一些临床信息列是后续的数据分析里面(主要是分组)没有意义的,病人总共时间日期,所有的病人可能都是一样的。

那么就需要去除,一个简单的按照列进行循环判断即可!

代码语言:javascript
复制
pd=pd[,apply(pd,2,function(x){
  length(unique(x))>1
})]

但是,仔细看临床信息表格会发现,还是有问题:

就是仍然是需要去除无效行,就是去掉临床信息为N/A、Unknown、Not evaluated的行,需要检查全部的列哦~

给一个参考答案

代码语言:javascript
复制
pd=pd[apply(
  apply(pd,2,function(x){
  grepl('N/A',x)
}),1,sum)==0,]

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

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

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

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

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