全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
3459 2
2015-06-26
悬赏 30 个论坛币 未解决
对10万个微博主的简介进行分词,用了"jiebaR"的软件包。用了个for的循环abc=function(x){
  mixseg=worker()
  k=length(x)
  y=NULL
for (i in 1:k)
   {y[i]<-list(segment(x[i], mixseg))

  }
  return(y)
}




出现 error

Error in gsub(basenames, "", code[1], fixed = TRUE) : zero-length pattern
3 gsub(basenames, "", code[1], fixed = TRUE)


各位大神求解.
二维码

扫码加我 拉你入群

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

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

全部回复
2015-7-21 21:10:40
x[i] 的内容不能为 '.' 增加层判断试试。
二维码

扫码加我 拉你入群

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

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

2015-12-4 01:50:05
library(jiebaR)
cutter = worker(write=FALSE)
cutter["."]
跑一下这个,就会返回
Error in gsub(basenames, "", code[1], fixed = TRUE) : zero-length pattern

解决办法,就是在源文本文件中消灭英文的句号。
用正则表法式x=gsub("\\.","",x)
就ok了

还有在R里面尽量别写for循环,如果记录条数多效率会非常低下
可以用apply族替代for循环
jiebacut<-function(x) {cutter[as.character(x)]}
list_x <- apply(x, 1,jiebacut)
注意返回的数据类型是list
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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