Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从R中的长字符串中顺序检索短字符串列表?_R - Fatal编程技术网

如何从R中的长字符串中顺序检索短字符串列表?

如何从R中的长字符串中顺序检索短字符串列表?,r,R,这里有一个例子 x<-"ABCDEFGH" x [1] "ABCDEFGH" 有没有一种简单的方法可以在R中找到它?这里有一个解决方案,您只需要指定希望从x中提取的字符数作为n变量 n<-4 sapply (1:(nchar(x)-(n-1)), function(i) substr(x,i,i+(n-1))) #"ABCD" "BCDE" "CDEF" "DEFG" "EFGH" n这里有一个解决方案,您只需要指定希望从x中提取的字符数作为n变量 n<-4 sapply

这里有一个例子

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

有没有一种简单的方法可以在R中找到它?

这里有一个解决方案,您只需要指定希望从
x
中提取的字符数作为
n
变量

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

#"ABCD" "BCDE" "CDEF" "DEFG" "EFGH"

n这里有一个解决方案,您只需要指定希望从
x
中提取的字符数作为
n
变量

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

#"ABCD" "BCDE" "CDEF" "DEFG" "EFGH"

n这里是另一种方法:

x<-"ABCDEFGH"

N <- 4

substring(x, seq(1, nchar(x)-N+1, 1), seq(N, nchar(x), 1))
[1] "ABCD" "BCDE" "CDEF" "DEFG" "EFGH"

x这里是另一种方法:

x<-"ABCDEFGH"

N <- 4

substring(x, seq(1, nchar(x)-N+1, 1), seq(N, nchar(x), 1))
[1] "ABCD" "BCDE" "CDEF" "DEFG" "EFGH"

x这使用了基本R,所以您不需要加载stringr.Ups,您是对的,我忘了删除那一行。已经编辑了文章。输出应该都有4个字符,但是你的输出大部分有5个字符。这使用了基本的R,所以你不需要加载stringr。Ups,你是对的,我忘了删除那一行。已编辑该帖子。输出应全部为4个字符,但您的输出大部分为5个字符
子字符串(x,1:(nchar(x)-N+1),N:nchar(x))
。相同的算法,更简单的编码。但如果
N>nchar(x)
,则失败。向上投票。
子字符串(x,1:(nchar(x)-N+1,N:nchar(x))
。相同的算法,更简单的编码。但如果
N>nchar(x)
,则失败。向上投票。