全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
10629 3
2015-07-27
求助:代码如下,第一层for循环内的代码运行完全没有问题,但是for循环加上之后就提示错误“Error in x[j]:(x[j] + 19) : NA/NaN argument”,各位大侠,该如何解决?

for (i in 2:length(nr2)){
  tmp <- nr2[i]
  tmp1 <- unlist(tmp)
  x <- grep('<div class=\"block\"',tmp1)
  film3 <- list()
  for (j in 1:length(x)) {
    film3[j] <- list(tmp1[x[j]:(x[j]+19)])
  }
  film4 <- unlist(film3)
}


二维码

扫码加我 拉你入群

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

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

全部回复
2015-7-27 12:52:46
x 返回可能是空集
二维码

扫码加我 拉你入群

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

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

2015-7-27 14:45:35
wangfs111222 发表于 2015-7-27 12:52
x 返回可能是空集
谢谢你!原因是什么?我把最外层的for循环拿掉之后,里边的是能正确运行的并且得到正确的结果,X也并不是空集。
二维码

扫码加我 拉你入群

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

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

2015-7-28 09:15:05
weberxu 发表于 2015-7-27 14:45
谢谢你!原因是什么?我把最外层的for循环拿掉之后,里边的是能正确运行的并且得到正确的结果,X也并不是 ...
x <- grep('<div class=\"block\"',tmp1)
可能返回的结果是空集,就是没有找到匹配的项目

grep(value = FALSE) returns a vector of the indices of the elements of x that yielded a match (or not, for invert = TRUE. This will be an integer vector unless the input is a long vector, when it will be a double vector.
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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