【发布时间】:2019-06-03 17:39:13
【问题描述】:
我对 quanteda R 中的语言预处理有疑问。我想根据一些文档生成文档特征矩阵。因此,我生成了一个语料库并运行以下代码。
data <- read.csv2("abstract.csv", stringsAsFactors = FALSE)
corpus<-corpus(data, docid_field = "docname", text_field = "documents")
dfm <- dfm(corpus, stem = TRUE, remove = stopwords('english'),
remove_punct = TRUE, remove_numbers = TRUE,
remove_symbols = TRUE, remove_hyphens = TRUE)
当我检查 dfm 时,我注意到了一些标记 (#ml, @attribut, _iq, 0.01ms)。我宁愿拥有 (ml, attribut, iq, ms)。
我以为我删除了所有的符号和数字。为什么我仍然得到它们?
我很乐意得到一些帮助。
谢谢!!!
【问题讨论】:
-
如果您查看
tokens的帮助,它会说,例如remove_numbers将删除仅由数字组成的标记(单词),而不是与其他字符一起出现的数字。如果您需要的话,最好使用stringr包之类的东西从数据中取出这些数字和其他字符。