我们需要申请
any
在逻辑列上,而不是
isTRUE
jj %>%
group_by(a) %>%
mutate(c = any(b))
# A tibble: 9 x 3
# Groups: a [3]
# a b c
# <int> <lgl> <lgl>
#1 1 TRUE TRUE
#2 2 FALSE FALSE
#3 3 FALSE TRUE
#4 1 FALSE TRUE
#5 2 FALSE FALSE
#6 3 TRUE TRUE
#7 1 TRUE TRUE
#8 2 FALSE FALSE
#9 3 TRUE TRUE
否则(从
?isTRUE
)
is.logical(x) && length(x) == 1 && !is.na(x) && x
这个
rhs
表达
&&
仅当表达式
lhs
都是真的
这里,那个
length(x)
等于1是不正确的,所以它返回
FALSE