2

我正在使用 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

由此看来,这个错误似乎是无关的。这是关于数据库,而不是关于停用词。

4

1 回答 1

6

没关系,它正在工作。我做了以下最小示例:

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

我已经连续使用了几个tm_map表达式。事实证明,我删除空格、标点符号等的顺序已经将新的停用词连接回来。

于 2013-02-07T18:57:46.490 回答