Вы можете использовать data.table::between()
library(data.table)
df1$within_range <- sapply(1:nrow(df1), function(x)
all(between(df1[x, -1], 1, 6))) # e.g. between 1 and 6
Или - если вы предпочитаете прямолинейное решение, вы можете сделать
df1$within_range <- sapply(1:nrow(df1), function(x) {
tr <- df1[x, -1]
all(tr >= 1 & tr <= 6)
})
Результат
> df1
Name var1 var2 var3 var27 var28 within_range
1 Sub100 1 5 4 3 8 FALSE
2 Sub101 2 4 3 5 1 TRUE
3 Sub102 5 2 1 1 2 TRUE
Данные
df1 <- structure(list(Name = structure(1:3, .Label = c("Sub100", "Sub101",
"Sub102"), class = "factor"), var1 = c(1L, 2L, 5L), var2 = c(5L,
4L, 2L), var3 = c(4L, 3L, 1L), var27 = c(3L, 5L, 1L), var28 = c(8L,
1L, 2L)), row.names = c(NA, -3L), class = "data.frame")