首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >R删除包含条件行的行包含负值

R删除包含条件行的行包含负值
EN

Stack Overflow用户
提问于 2021-09-25 15:41:19
回答 4查看 48关注 0票数 1

如何删除数据帧中整行为负值的行?

代码语言:javascript
运行
复制
structure(list(name = c(1,-2,-6), data1 = c(1,-30,6), 
data3 = c(1,-51,-6), score1 = c(0, -40, 10), 
score2 = c(20, -25, 10)), class = "data.frame", 
row.names = c(NA, -3L))

输出

代码语言:javascript
运行
复制
name data1 data3 score1 score2
 1     1     1      0     20 
-6     6    -6     10     10
EN

回答 4

Stack Overflow用户

发布于 2021-09-25 16:04:03

如果为x > 0,则检查rowSums

代码语言:javascript
运行
复制
DF[rowSums(DF > 0) != 0, ]
#   name data1 data3 score1 score2
# 1    1     1     1      0     20
# 3   -6     6    -6     10     10
票数 2
EN

Stack Overflow用户

发布于 2021-09-25 18:00:46

使用if_all和negate (!)

代码语言:javascript
运行
复制
library(dplyr)
df1 %>%
   filter(!if_all(where(is.numeric), ~ .x < 0))
  name data1 data3 score1 score2
1    1     1     1      0     20
2   -6     6    -6     10     10
票数 2
EN

Stack Overflow用户

发布于 2021-09-25 15:44:14

您可以从dplyr使用if_any

代码语言:javascript
运行
复制
library(dplyr)

df %>% 
  filter(if_any(.cols = everything(),.fns = ~. > 0))

  name data1 data3 score1 score2
1    1     1     1      0     20
2   -6     6    -6     10     10
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69327680

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档