【问题标题】:Is there a way to remove all the adverbs and pronouns from the string in R?有没有办法从 R 中的字符串中删除所有副词和代词?
【发布时间】:2020-04-16 10:16:58
【问题描述】:

我是 R 新手。在尝试执行主题建模时,我需要从数据集中删除所有不相关的词。是否有可以找到属于特定词性的单词的功能?

【问题讨论】:

  • 打包 udpipe 用于 pos 标记,阅读小插曲。或用于文本挖掘的 quanteda。等等...检查cran NLP task view
  • 非常感谢! udpipe 似乎是个不错的选择!

标签: r nlp statistics topic-modeling


【解决方案1】:

你可以使用

gsub(pattern, replacement, x)

其中 x 是您的字符变量,“pattern”是您要替换的单词,“replacement”是“”。但是,R 不知道代词是什么。所以你必须通过用你的字符串编写的语言编写所有可能的代词列表来告诉它。然后你必须重复删除所有代词(或任何类型的词),如下所示:

x <- "This is a character string in which I tell you how he deleted pronouns."
unwant <- c(
"I", "he", "she", "it",...)
unwanted <- c(paste(" ", unwanted, " ", sep = ""), paste(" ", unwanted, ".", sep = ""), paste(" ", unwanted, "!", sep = ""), paste(" ", unwanted, "?", sep = ""), paste(" ", unwanted, ",", sep = "")
)

result <- x
for(i in 1:NROW(unwanted)){
result <- gsub(unwanted[i], " ", result)
}

print(result)

显然,“...”意味着你必须插入所有你不想要的词,但我想互联网上的某个地方有所有代词的列表。 编辑:您必须在单词之前和之后插入空格,这样 R 就不会从它们出现的其他单词中删除这些字母。我通过paste 函数添加了这个,你的代词可以通过多种方式进行修改,例如以防它们出现在句末。

【讨论】:

  • 我已经编辑了一些小东西,你可能必须尝试理解它并在它们发生时更改错误(必须考虑单词如何在文本中出现的所有可能情况) ...
  • 我刚刚发现了一个 stop_words 函数,其中包含副词和代词,以及一些可能给数据添加噪音的其他词。所以我想我会用它!
猜你喜欢
  • 2018-09-06
  • 2019-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-20
  • 2021-07-30
  • 1970-01-01
  • 2014-06-02
相关资源
最近更新 更多