Чтобы создать все возможные комбинации строк из входных предложений, я сделал строки кода ниже.
library(stringr)
text = c('I like you', 'I love you so much', 'she like it so much', 'she hate you', 'he hate you so much','I like him')
tex = data.frame(text)
library(splitstackshape)
pattern = data.frame(cSplit(tex, "text", " "))
n=ncol(pattern)
dat = c()
for(i in 1:n){
tt = unique(pattern[,i])
g=paste0(tt,collapse = ' ')
dat = c(dat,g)
SEQ = data.frame(dat)
}
SEQ = data.frame(cSplit(SEQ, "dat", " "))
Может формировать этот фрейм данных.
dat_1 dat_2 dat_3
1 I she he
2 like love hate
3 you it him
4 <NA> so <NA>
5 <NA> much <NA>
Я хочу создать все возможные комбинации (108) слов, как показано ниже.
I like you so NA
I like you so much
I like you NA NA
I like you NA much
...
he love him so much
he love him NA NA
he love him NA much
he hate you so NA
he hate you so much
...
Что я должен сделать, чтобы составить эти списки?