Я пытаюсь создать функцию в R, которая выдает «pass», если целое число больше 100, «fail», если меньше 100, или «нейтральное», если равно 100. Код должен сказать «недопустимый» для символьной переменной / текста.
Это код, который у меня есть:
compare <- function(x) {
if (x>100) {
result = "pass"
}
else if (x<100) {
result = "fail"
}
else if (x==100) {
result = "neutral"
}
else if (is.character(x) == TRUE) {
result = "invalid"
}
print(result)
}
compare(10)
compare(100)
compare(120)
compare("text")
Я ожидаю, что сравнение (10) выдаст «fail», сравнение (100) для «нейтрального», сравнение (120) для «pass») и сравнение («text») для «недопустимого». Все целые числа работают, однако, сравнение («текст») постоянно выдает «pass» вместо «invalid». Сравнение (as.character ("text")) также только выдает "pass".