句子中两个单词的组合

时间:2017-07-10 08:36:24

标签: r string

例如,我需要从R中的句子中获得两个单词的组合 ABC是一个价值为“你好朋友,你好吗”的字符串

要求O / p采用向量的形式,其中每个元素包含两个字输出,如

V[1] - "hello friend"
V[2]  - "friend how"
V[3]  -  "how are"
V[4]  -  "are you"

我可以使用此代码获取此信息。请建议是否有更好的方法来做到这一点

Z = 1
for (l in 1:(length(ABC) - 1)) {
  E[z] <- paste(ABC[l], ABC[l+1])
  z <- z + 1 
}

1 个答案:

答案 0 :(得分:0)

您可以使用sapply编写一个函数:

fun <- function(dat,sep) {
    n = unlist(strsplit(dat,split=sep))
    m = length(n)-1
   sapply(1:m,function(x) paste(n[x],n[x+1]))
}

abc <- c("hello friend how are you")

fun(abc," ")

如果您有要分割的短语列表,可以在函数周围包裹lapply

abc <- c("hello friend how are you","test sentence one","test sentence two")

lapply(abc,function(y) fun(y," "))