gpt4 book ai didi

r - 如果第 1 列值低于第 2 列和第 3 列值,如何删除行?

转载 作者:行者123 更新时间:2023-12-03 07:53:57 25 4
gpt4 key购买 nike

我想知道如果第 1 列的值低于第 2 列和第 3 列的值,如何删除行?

这是更新的虚拟数据集:

c <- c(10, 20, 30, 40, 50)
b <- c(40, 2, 40, 10, 50)
a <- c(10, 50, 0.0000891, 60, 100)
id <- c("a", "b", "c", "d", "e")

data <- data.frame(id, a, b, c)
head(data)
# id a b c
#1 a 10 40 10
#2 b 50 2 20
#3 c 8.91e-05 1 0
#4 d 60 10 40
#5 e 100 50 50

在上面的虚拟数据集中,我们可以看到例如:data$id“c”,a 列值低于“b”和“c”列。

条件删除后,这是预期的输出:

#  id   a  b  c
#1 b 50 2 20
#2 d 60 10 40
#3 e 100 50 50

如果可能的话,tidyverse 方法更受欢迎。谢谢。

最佳答案

另一种允许使用 if_any 进行动态选择的方法:

library(dplyr)
data |>
filter(if_any(b:c, ~ a >= .x))

# id a b c
#1 a 10 40 10
#2 b 50 2 20
#3 d 60 10 40
#4 e 100 50 50

关于r - 如果第 1 列值低于第 2 列和第 3 列值,如何删除行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76504324/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com