Podczas korzystania z RPostgreSQL
uważam, że nie mogę używać sqldf
w ten sam sposób. Na przykład, jeśli załadować biblioteki i czytać w danych w ramce danych za pomocą następującego kodu:Używanie sqldf i RPostgreSQL razem
library(RPostgreSQL)
drv <- dbDriver("PostgreSQL")
con <- dbConnect(drv, host="localhost", user="postgres", password="xxx", dbname="yyy", port="5436")
rs <- dbSendQuery(con, "select * from table");
df<- fetch(rs, n = -1); dbClearResult(rs)
dbDisconnect(con)
Wiem mieć zawartość tej tabeli w dataframe df
. Jednak jeśli chcemy uruchomić polecenie SQL przy użyciu sqldf
chciałbym wcześniej zrobić coś takiego:
sqldf("SELECT * FROM df WHERE X > 10")
To już nie działa jak otrzymuję komunikat o błędzie:
Error in postgresqlNewConnection(drv, ...) :
RS-DBI driver: (could not connect [email protected] on dbname "test"
)
Error in !dbPreExists : invalid argument type
zakładam to błąd operatora z mojej strony, ale nie wiem, jakie argumenty dostarczyć do sqldf
, aby skupić się tylko na ramce danych i nie próbować łączyć się z niczym innym.