R语言中如何判断数据框列或者行全部为指定值

 

001、

a <- c(0, 0, 0, 0)
b <- c(9, -8, -15, 54)
c <- c(8, 2, 8, 9)
d <- c(0, 0, 0, 0)

dat <- data.frame(a, b, c, d)       ## 测试数据框
dat
result <- vector()
for (i in 1:ncol(dat)) {
  if (all(dat[,i] == 0)) {          ## 判断数据框的哪一列全部为0
    result <- c(result, i)
  }
}
result

 

 

002、应用于行

a <- c(5, 0, 7, 0)
b <- c(9, 9, 9, 9)
c <- c(9, 9, 9, 9)
d <- c(7, 0, 9, 9)
dat <- rbind(a, b, c, d)      ## 测试数据框
dat

result <- vector()

for (i in 1:nrow(dat)) {
  if(all(dat[i,] == 9))       ## 判断那些行全部为9
  {
    result <- c(result, i)
  }
}
result

 

posted @ 2022-09-07 20:55  小鲨鱼2018  阅读(328)  评论(0编辑  收藏  举报