fawnshao的个人博客分享 http://blog.sciencenet.cn/u/fawnshao

博文

用R去掉全是NA的行

已有 19800 次阅读 2013-7-16 10:38 |个人分类:R学习使用|系统分类:科研笔记

我有1367*400的大矩阵,需要去掉全是NA的进行下一步计算。

不想另外写个脚本来处理,想着R肯定有快捷办法,google到了一个很管用的函数。

戳这里http://stackoverflow.com/questions/6471689/remove-rows-in-r-matrix-where-all-data-is-na


我的矩阵是

as.matrix(read.table("file",header=T,sep="t",row.names=1))->x

x[apply(x, 1, function(x) !all(is.na(x))),]->y


> dim(x)

[1] 1367  400

> dim(y)

[1] 987 400

就搞定了删除,apply很管用。


另外,如果要把NA的替换成0,也没必要用sed之类的,在R里直接

x[ is.na(x) ] <- 0





https://wap.sciencenet.cn/blog-824692-708531.html

上一篇:用R画横向bar图
下一篇:mysql获取ucsc信息
收藏 IP: 158.182.150.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-25 01:25

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部