Как последовательно получить список коротких строк из длинной строки в R? - PullRequest
1 голос
/ 14 января 2020

Вот пример

x<-"ABCDEFGH"
x
[1] "ABCDEFGH"

Моя цель - последовательно извлекать строки с nchar=4 до конца x, таким образом, результат будет:

> df
    xx
1 ABCD
2 BCDE
3 CDEF
4 DEFG
5 EFGH

Есть ли простой способ добраться до него в R?

Ответы [ 2 ]

5 голосов
/ 14 января 2020

Вот решение, в котором вам просто нужно указать количество символов, которое вы будете sh извлекать из x в качестве переменной n.

n<-4
sapply (1:(nchar(x)-(n-1)), function(i) substr(x,i,i+(n-1)))

#"ABCD" "BCDE" "CDEF" "DEFG" "EFGH"
4 голосов
/ 14 января 2020

Вот еще один подход:

x<-"ABCDEFGH"

N <- 4

substring(x, seq(1, nchar(x)-N+1, 1), seq(N, nchar(x), 1))
[1] "ABCD" "BCDE" "CDEF" "DEFG" "EFGH"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...