在r [duplicate]中使用&&表示字符向量

问题描述 投票:0回答:1

&&布尔运算符似乎与字符向量的工作方式不同,我想知道是否有人知道原因。

例如:

streetA <- c("green", "green", "red")

streetB <- c("green", "green", "green")

streetA == "green" && streetB == "green"

返回TRUE,但语句应该返回FALSE,因为streetA中有一个“红色”。

&语句按预期工作:

streetA == "green" & streetB == "green"

返回:TRUE TRUE FALSE

有人知道为什么吗?

r boolean
1个回答
4
投票

来自&&文档:

&和&&表示逻辑AND和|和||表示逻辑OR。较短的形式以与算术运算符大致相同的方式执行元素比较。较长的形式从左到右评估仅检查每个向量的第一个元素。评估仅在确定结果之前进行。较长的形式适用于编程控制流程,通常在if子句中是优选的。

© www.soinside.com 2019 - 2024. All rights reserved.