我有一个矩阵mat
,它的元素是NA
,0
,1
,2
。我得到了关于removing the columns with 0 or NA or both values的答案,但现在我想添加删除列的附加条件。
我必须删除包含相同值的列,删除NA或0或两者的列,NA或1或两者的列和NA或2或两者的列(我应该保留在其值变化的列)
我使用了这个代码,但没有正常工作:
mat_nonNA <- mat[, !apply((is.na(mat) | mat == 0) & (is.na(mat) |
mat==1) &(is.na(mat) | mat==2), 2, all)]
2条答案
按热度按时间bfhwhh0e1#
如果我正确理解了您的请求,您可以尝试:
它查找具有超过1个不同的非
NA
值的列。结果是:
c9qzyr3d2#
我很确定你可以直接做,但很难理解这么复杂的情况。相反,尝试先单独评估这些条件: