全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
3837 1
2015-10-10
用tm做文本分析,想要剔除中文的停用词
在网上找了停用词表用read.table读入。提示
Warning message:
In scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings,  :
  EOF within quoted string

我看了一下,只读入了18行数据。后面的数据没有,我猜测是后面的数据中存在指针结束符,导致读取终止。我把18行后面几行数据删掉以后果然可以继续读取。
由于我在后面要生成词频矩阵,需要把停用词文本文件转换成UTF-8。但我转存以后, 就无法按停用词所显示的换行符读取。有些地方一次读取好几行内容,内容中间还包括“\n”
求解决方法。


附件列表

stop_words_ch.txt

大小:4.17 KB

 马上下载

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-10-10 17:41:32
我目前的解决办法是,不将停用词文本文件转存为utf格式。注意读取时也不要加encoding='UTF-8',能正常显示中文。
然后,用坛子里说的一个办法把停用词向量转换为utf-8编码。
stopwords_CN<-enc2utf8(stopwords_CN) #转utf-8
stopwords_CN<-stopwords_CN[Encoding(stopwords_CN)!="unknown"]#去除未知编码字符
这样在后面调用tm_map时,就不会出错。
但是,为什么read.table方法不能健壮一点,能够完全正确地读出转为utf-8格式的文本。或者对文本文件的换行符做替换处理?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群