首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在R中计算strsplit的输出

在R中计算strsplit的输出
EN

Stack Overflow用户
提问于 2014-12-22 15:03:25
回答 1查看 2.4K关注 0票数 2

我有以下字符串表达式,我对其应用了strsplit:

代码语言:javascript
复制
x="Hello I am using stack overflow to ask this question."
y=strsplit(x,"a")

当有'a‘时,上面的函数拆分x。根据我的理解,返回的向量应该是一个列表,所以假设我想要获得x的第二个片段,我应该使用:

代码语言:javascript
复制
y[[2]]

然而,这给了我一个错误:

代码语言:javascript
复制
Error in y[[2]] : subscript out of bounds

我不确定如何解决这个问题。我想要的就是访问断线的片段。

EN

回答 1

Stack Overflow用户

发布于 2014-12-22 15:04:54

strsplit会返回一个列表。但是,list只是一个单一的元素列表。

代码语言:javascript
复制
length(strsplit(x,'a'))
#[1] 1

要访问,单个元素列表的第二个string

代码语言:javascript
复制
strsplit(x,"a")[[1]][2]
#[1] "m using st"

假设,如果您有一个元素向量

代码语言:javascript
复制
 a1 <- rep(x,3)

strsplit返回一个列表,其中元素的数量等于a1的长度

代码语言:javascript
复制
 lst <- strsplit(a1,'a')

lst获取2nd拆分字符串

代码语言:javascript
复制
 sapply(lst,`[`,2)
 #[1] "m using st" "m using st" "m using st"
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27597984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档