, если я сделаю следующее:
x <- c(TRUE, TRUE, FALSE)
if(x) {
print("hey there")
}
x
оценивается как TRUE
, поскольку первый элемент - TRUE
. Я хотел бы, чтобы условие оценивалось как TRUE
, только если каждый элемент x
равен TRUE. Я думаю, что должен быть простой способ, который я пропускаю (я искал). Я думал, что all.equal
будет тем, что я хотел (поэтому я мог проверить, что «все элементы x
равны TRUE
»), но это служит другой цели.
Я знаю, что это не идеально (он даже не проверяет, является ли x
логичным), но лучшее, что я до сих пор придумал, - это сделать что-то вроде этого:
xu_if <- function(x) {
sum(x) == length(x)
}
if(xu_if(x)) {
print("hey there")
}
Каков наилучший способ сделать это?