書いたばかりですが、Rに既に存在するかどうか疑問に思っていました.
ところで、関数は次のとおりです(改善の提案は大歓迎です):
set.seed(50)
x <- sample(c(letters, LETTERS), 7)
is.lower <- function(x)
{
unlist(sapply(x, function(x2) {x2 %in% letters}))
}
is.lower(x)
grepl("[a-z]",x)
例えば?
> grepl("[a-z]",x)
[1] FALSE TRUE TRUE FALSE TRUE TRUE FALSE
そして、なぜそれを難しくするのですか?
> x %in% letters
[1] FALSE TRUE TRUE FALSE TRUE TRUE FALSE
独自の関数を作成する必要はありません。
結果として論理インデックスの代わりに値を使用する別のアプローチは、文字にそれ自体の名前を付け、インデックスとしてxを使用して「[」を使用することです。
names(letters) <- letters
letters[x]
#<NA> w k <NA> y c <NA>
# NA "w" "k" NA "y" "c" NA