如何考虑来自http://www.ranks.nl/stopwords的“长停用词列表”?

问题描述

我想使用R从我的文本中删除所有停用词。我要删除的停用词列表可以在http://www.ranks.nl/stopwords下的“ 长停用词列表”(一个很长的列表版本)部分下找到。我正在使用tm软件包。可以帮我吗? Tnx!

解决方法

您可以复制该列表(在浏览器中将其选中后),然后将其粘贴到R中的该表达式中:

LONGSWS <- " <paste into this position> "

您将光标置于编辑器或IDE控制台设备的两个引号内。然后执行以下操作:

sw.vec <- scan(text=LONGSWS,what="")
#Read 474 items

scan函数需要具有通过给what自变量的示例指定的输入类型,为此,仅使用""就足以用于字符类型。然后,您应该可以应用注释中提供的代码:

 tm_map(text,removeWords,sw.vec)

您尚未提供示例text对象。仅使用字符向量是不成功的:

 tm_map("test of my text",sw.vec )
#Error in UseMethod("tm_map",x) : 
#  no applicable method for 'tm_map' applied to an object of class "character"

因此,我们需要假设您有一个适合的类的适合的对象,可以放置在tm_map的参数的第一位置。因此,请使用?tm_map帮助页面中的示例:

> res <- tm_map(crude,sw.vec )
> str(res)
List of 20
 $ 127:List of 2
  ..$ content: chr "Diamond Shamrock Corp said \neffective today   cut  contract prices  crude oil \n1.50 dlrs  barrel.\n    The re"| __truncated__
  ..$ meta   :List of 15
  .. ..$ author       : chr(0) 
  .. ..$ datetimestamp: POSIXlt[1:1],format: "1987-02-26 17:00:56"
  .. ..$ description  : chr ""
  .. ..$ heading      : chr "DIAMOND SHAMROCK (DIA) CUTS CRUDE PRICES"
  .. ..$ id           : chr "127"
  .. ..$ language     : chr "en"
  .. ..$ origin       : chr "Reuters-21578 XML"
  .. ..$ topics       : chr "YES"
  .. ..$ lewissplit   : chr "TRAIN"
  .. ..$ cgisplit     : chr "TRAINING-SET"
   # ----------------snipped remainder of long output.

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...