Ответ 1
Используйте LETTERS
и LETTERS
(для верхнего и нижнего регистра соответственно).
Я могу сделать последовательность чисел следующим образом:
s = seq( from = 1, to = 10, by = 1 )
Как создать последовательность символов из A-Z? Это не работает:
seq( from = 1, to = 10 )
Используйте LETTERS
и LETTERS
(для верхнего и нижнего регистра соответственно).
Используйте код, который у вас есть с letters
и/или letters
:
> LETTERS[seq( from = 1, to = 10 )]
[1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J"
> letters[seq( from = 1, to = 10 )]
[1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j"
Просто используйте предопределенные переменные letters
и letters
.
И для полноты, здесь это что-то использует seq
:
R> rawToChar(as.raw(seq(as.numeric(charToRaw('a')), as.numeric(charToRaw('z')))))
[1] "abcdefghijklmnopqrstuvwxyz"
R>
В пакете R.oo есть функция intToChar
, которая использует значения ASCII, если LETTERS
и LETTERS
не являются хорошими. A - 65 в ASCII:
> require(R.oo)
> intToChar(65:79)
[1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O"
или вы можете использовать тот факт, что младшие номера юникода - ascii и, следовательно, intToUtf8
в R-базе, например:
> intToUtf8(65:78,multiple=TRUE)
[1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N"
или faff вокруг с rawToChar
:
> rawToChar(as.raw(65:78))
[1] "ABCDEFGHIJKLMN"