将字符串转换为R中的字母向量

时间:2014-08-22 12:26:56

标签: r string vectorization

假设我在R中有一个字符串"aa1122ddccdsadsa"

我想将任何字符串转换为字母矢量,我该怎么做?

我的意思是给一个字符串,我希望它是

"a" "a" "1" "1" "2" etc

2 个答案:

答案 0 :(得分:0)

实际上有很多方法可以做到这一点。这是一个使用strsplit和正则表达式:

x <- c("aa1122ddccdsadsa")

strsplit(gsub("([[:alnum:]]{1})", "\\1 ", x), " ")[[1]]

> strsplit(gsub("([[:alnum:]]{1})", "\\1 ", x), " ")[[1]]
 [1] "a" "a" "1" "1" "2" "2" "d" "d" "c" "c" "d" "s" "a" "d" "s" "a"

您还可以使用substringplyr

答案 1 :(得分:0)

使用stringi package中的stri_sub功能 从1,2,3 ...字母

获取长度为1的子字符串
require(stringi)    
x <- "alamakota"
stri_sub(x,from=1:stri_length(x),length = 1)
## [1] "a" "l" "a" "m" "a" "k" "o" "t" "a"