假设我有
M <- data.frame(x=1:2,y=3:4)
现在我检查M的元素(),我得到一个空结果
uniqueElements <- apply(M,1,function(x){length(unique(x)})
delete <- which(uniqueElements == 1)
我想删除符合条件的M行=没有删除
M[-delete,]
如何进行?
答案 0 :(得分:3)
您可以使用rowSums
M[rowSums(M)!=5,]
如果您使用apply
,则使用逻辑索引而不是数字索引
M[!apply(M, 1, sum)==5,]
如示例中所示,没有一行满足条件
apply(M, 1, sum)==5
#[1] FALSE FALSE
所以,which
会给出
which(apply(M, 1, sum)==5)
#integer(0)