Вы не можете сравнивать 2 вектора в выражении if()
. if()
принимает одно условие TRUE
или FALSE
. Вы можете добавить all()
функцию, и она будет работать:
n <- c("madam" )
string <- strsplit(as.character(n), "")
string = unlist(string)
reversed_split = string[nchar(n):1]
if (all(string == reversed_split) ) print("Indeed") else print("Not At All")
Вот вывод:
> if (all(string == reversed_split) ) print("Indeed") else print("Not At All")
[1] "Indeed"
Может оказаться полезным использовать библиотеку stringi
:
library(stringi)
stri_reverse("madam")
## [1] "madam"
stri_reverse("sir")
## [1] "ris"