我一直试图在这个数据框架中消除0并尝试堆栈溢出中的所有方法,但都没有工作!
这是df
Department Hours SIZE
1 HVAC 1281 38000
2 PH 717 38000
3 Ele 854 38000
4 LV 568 38000
5 Man 462 38000
7 HVAC 202 38000
8 PH 22 38000
9 Ele 30 38000
10 LV 49 38000
11 Man 75 38000
13 HVAC 52 33000
14 PH 40 33000
15 Ele 72 33000
16 LV 0 33000
17 Man 0 33000
19 HVAC 118 33000
我已经尝试过这些:
sizedf <- lapply(sizedf, function(x) x[x != 0 & !is.na(x)])
sizedf[sizedf$Hours==0] <- NA
sizedf[apply(sizedf[,-1], 1, function(x) !all(x== 0)),]
答案 0 :(得分:2)
我们可以对使用数据集子集创建的逻辑矩阵使用rowSums
和数字列,并获取逻辑vector
来对行进行子集
sizedf2 <- sizedf[!rowSums(sizedf[-1]==0),]