r语言 - rsqlite table and lubridate



我试图处理r数据库中的表。我写的代码如下。

con <- dbConnect(RSQLite::SQLite(), "flights.sqlite")
airports1 <- dplyr::tbl(con, "airports")
flights1 <- dplyr::tbl(con, "flights")
airportcounts <- flights1 %>% filter(Dest %in% c("SNA", "SJC", "SMF")) %>% group_by(Dest, Year, Month) %>% summarise(count = n())

解开这条线,没有问题。表格"flights"已经写好了,我使用dplyr函数来总结计数。完成这项工作后,我尝试制作一个新的列,"Date"one_answers"Year"one_answers"Month"列,我编写的代码如下。

airportcounts %>% mutate(Date = lubridate::make_date(Year, Month))

然而,我收到了一条错误消息:

'Error in vapply(list(year, month, day), length, 1, USE.NAMES = FALSE) : 
object 'Year' not found'

我必须在airportcounts表中完成这项工作,而不是以tibble或data.frame的形式。我该如何解决这个问题?

(我编写的代码适用于tibble数据(

SQLite不知道如何处理日期。您需要将数据加载到R中以处理日期:

airportcounts %>% collect() %>% mutate(...)

此外,summarize()保留了分组的一部分,我建议ungroup()紧跟在summarize()之后。

最新更新