gpt4 book ai didi

r - 如何测试多个条件?

转载 作者:行者123 更新时间:2023-12-02 07:38:49 25 4
gpt4 key购买 nike

假设我有一个变量 y和一个变量 i .

y<- c(TRUE, TRUE, TRUE)
i<- 0

假设我想为 y 中的每个 boolean 条件测试以下 if 语句:

if (y) {
i<-1
}

我该怎么做?也就是说,我要 i = 1如果 y 中的每个 boolean 条件是TRUE .

如果y<- c(TRUE, FALSE,TRUE) ,那么我希望 if 语句的计算结果为 FALSEi=0 .有谁知道我该怎么做?目前我收到此警告消息:

Warning message:
In if (y) { :
the condition has length > 1 and only the first element will be used.

我将如何测试变量 y对于每个 boolean 条件?

最佳答案

为了详细说明@Dason 的回答,all() any() sum()which() 在处理逻辑向量时非常有用

示例:

      vec1 <- c(T, T, F, T, F)

> all(vec1) # Are all elements True
[1] FALSE

> any(vec1) # Are any True
[1] TRUE

> sum(vec1) # How many are True
[1] 3

> which(vec1) # Which elements (by index) are True
[1] 1 2 4

> which(!vec1) # Which elements (by index) are False
[1] 3 5

示例 2:

vec2 <- c(T, T, T, T, T)

all(vec2) # TRUE
any(vec2) # TRUE
sum(vec2) # 5
which(vec2) # 1 2 3 4 5
which(!vec2) # integer(0)

关于r - 如何测试多个条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13372158/

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