强制参数不是原子向量(无限重复)

时间:2019-06-16 19:28:16

标签: r

此处是新手问题。我正在尝试运行一些代码,这些代码将从组合的网页列表中提取用户名和日期。以前,这工作得很好,但是现在当我运行代码时,我不断收到错误“ coercingargument不是原子向量”,该错误不断地重复。

我已经尝试在这里查看以前的答案,但似乎没有任何效果。我不明白为什么即使一切都没有改变,它突然停止工作。我的感觉是我要么删除了它需要的库,要么还没有完全重置。任何帮助将不胜感激。

# COLLECT THE DATES
for (i in urls3) {
  addurl <- i
  discussion <- read_html(i, timeout = 1000000000)
  usernames <- discussion %>% 
  html_nodes(".lia-component-message-view-widget-author-username a") %>% 
  html_text()
  all.usernames <- append(all.usernames, usernames)
  datetime <- discussion %>% 
  html_nodes(".local-friendly-date")
  datetime <- str_extract(datetime, "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2} [A-Z]{2}")
  datetime <- parse_date_time(datetime, "%Y-%m-%d %H:%M:%p", tz = "US/Eastern")
  datetime <- as.character(datetime)
  date.posted <- datetime[1]
  date.replied <- datetime[2]
  date.difference <- difftime(datetime[2],datetime[1], units=c("mins"))

  new.table <- rbind(new.table,c(addurl, date.posted, date.replied, date.difference))
}

预期结果将是一个包含URL,发布日期,回复日期和日期差的表。

实际结果是“参数不是原子矢量;强制参数不是原子矢量;强制参数不是原子矢量;强制参数不是原子矢量;……”

1 个答案:

答案 0 :(得分:0)

您需要这些软件包才能使代码正常工作:

library(textreadr)
library(dplyr)
library(rvest)
library(stringr)
library(lubridate)

您可能会发现在for循环中哪里出错了,最后请注意在两个侧面连接相同的对象时。

append, c, rbind

您有两个带有read_html函数的程序包,请小心。您将变得更加清楚,可以举一个更具句法的例子。希望对您有帮助。