我正在写一个R脚本,并且正在使用library(ngram)。

假设我有一个字符串,

“优质Qualiti产品狗食购买了一些至关重要的 jar 装狗食品产品发现优质Qualiti产品看起来像炖煮过程中的肉味更好,拉布拉多finicki欣赏产品更好”

并想找到二元语法。

ngram库为我提供了二元语法,如下所示:

“鉴赏产品”“加工肉”“食品”“购买食品”“qualiti狗”“产品发现”“产品外观”“外观”“喜欢炖”“优质qualiti”“labrador finicki”“买断”“qualiti”产品”“更好的拉布拉多”
“狗食” “闻起来更好”“至关重要的 jar 头”“肉味”“发现良好”“严重至关重要”“炖制过程”“ jar 头狗”“finicki欣赏”“产品更好”

因为该句子两次包含“狗食”,所以我希望两次此二元语法。但是我得到一次!

那么在gramgram库或任何其他提供R语言中我句子所有二元语法的库中是否有一个选项?

最佳答案

您可以使用stylo包。提供重复项:

library(stylo)
a = "good qualiti dog food bought sever vital can dog food product found good qualiti product look like stew process meat smell better labrador finicki appreci product better"
b = txt.to.words(a)
c = make.ngrams(b, ngram.size = 2)
print(c)

结果:
 [1] "good qualiti"     "qualiti dog"      "dog food"         "food bought"      "bought sever"     "sever vital"      "vital can"        "can dog"          "dog food"
[10] "food product"     "product found"    "found good"       "good qualiti"     "qualiti product"  "product look"     "look like"        "like stew"        "stew process"
[19] "process meat"     "meat smell"       "smell better"     "better labrador"  "labrador finicki" "finicki appreci"  "appreci product"  "product better"
>

10-05 23:00