我试图重新创建一个包含数百列的数据框(DC5_prod),但很多列没有任何除零以外的值。
数据框中的第一列是文本,其余的是数字。有没有办法忽略第一列,同时消除完全由零组成的其余列?
DC5_Prod
a b c d e f
1 AK 0 0 0 0 1
2 JI 0 0 0 0 0
上面是它目前的表现形式的片段,并希望输出:
DC5_Prod
a f
1 AK 1
2 JI 0
当我尝试在网站上使用针对类似问题发布的解决方案时:
DC5_prod[, colSums(DC5_prod != 0) > 0]
基本上只返回第一列而不删除任何。
答案 0 :(得分:0)
尝试这种R基础方法
> ind <- sapply(DC5_Prod, function(x) sum(x==0)) != nrow(DC5_Prod)
> DC5_Prod[,ind]
a f
1 AK 1
2 JI 0