R tm removeWords停用词不会删除停用词

时间:2013-02-07 17:42:17

标签: r nlp stop-words tm

我使用的是R tm软件包,发现删除文本元素的tm_map函数几乎都不适用于我。

通过'工作'我的意思是,例如,我将运行:

d <- tm_map(d, removeWords, stopwords('english'))

但是当我跑

ddtm <- DocumentTermMatrix(d, control = list(
    weighting = weightTfIdf,
    minWordLength = 2))
findFreqTerms(ddtm, 10)

我仍然得到:

[1] the     this

......等等,以及一堆其他的停用词。

我看到没有错误表明出现了问题。有谁知道这是什么,以及如何正确制作禁用词删除功能,或诊断我的错误是什么?

更新

早些时候有一个错误,我没有抓到:

Refreshing GOE props...
---Registering Weka Editors---
Trying to add database driver (JDBC): RmiJdbc.RJDriver - Warning, not in CLASSPATH?
Trying to add database driver (JDBC): jdbc.idbDriver - Warning, not in CLASSPATH?
Trying to add database driver (JDBC): org.gjt.mm.mysql.Driver - Warning, not in CLASSPATH?
Trying to add database driver (JDBC): com.mckoi.JDBCDriver - Warning, not in CLASSPATH?
Trying to add database driver (JDBC): org.hsqldb.jdbcDriver - Warning, not in CLASSPATH?
[KnowledgeFlow] Loading properties and plugins...
[KnowledgeFlow] Initializing KF...

Weka正在删除tm中的停用词,对吗?那么这可能是我的问题?

更新2

this开始,此错误似乎无关。它关于数据库,而不是关于停用词。

1 个答案:

答案 0 :(得分:6)

没关系,它正在发挥作用。我做了以下最低限度的例子:

data("crude")
crude[[1]]
j <- Corpus(VectorSource(crude[[1]]))
jj <- tm_map(j, removeWords, stopwords('english'))
jj[[1]]

我在系列中使用了多个tm_map个表达式。事实证明,我删除空格,标点符号等的顺序重新加入了新的停用词。