我正在运行这样的事情:(抱歉,它不是100%可重复的,除非你的机器上运行了postgres,创建了mydb和表,以及给定的用户和密码)
library(RPostgreSQL)
library(tidyverse)
library(dbplyr)
pg_conn <- RPostgreSQL::dbConnect(
drv = "PostgreSQL", dbname = "mydb",
user = "postgres", password = "postgres"
)
table1_pg <- dplyr::tbl(pg_conn, "table1")
table2_pg <- dplyr::tbl(pg_conn, "table2")
table_join <- table1_pg %>%
left_join(table2_pg, by = c("x" = "x"))
我收到以下错误:
Error in nlevels(object) : argument "object" is missing, with no default
我不知道发生了什么(我100%确定表存在并且每个表都有x列;我可以查询它们,使用tbl
或直接发送带有{的sql {1}})。
我已经搜索了问题并搜索了GitHub和SO,但我找不到解决方案,也没有人报告问题。我发现的最接近的问题是RPostgreSQL::dbGetQuery
duplicates join variables。我使用left_join
尝试了@ hadley的dx示例,但是在我的机器上可以正常工作,所以这可能是postgres特定的问题吗?
这是我的SQLite
sessionInfo()