Używanie razem sqldf i RPostgreSQL
Podczas używaniaRPostgreSQL
Uważam, że nie mogę użyćsqldf
w ten sam sposób. Na przykład, jeśli załaduję bibliotekę i wczytam dane do ramki danych za pomocą następującego kodu:
<code>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) </code>
Wiem, że zawartość tej tabeli jest w ramce danychdf
. Jeśli jednak chcę uruchomić polecenie SQL przy użyciusqldf
Wcześniej zrobiłbym coś takiego:
<code>sqldf("SELECT * FROM df WHERE X > 10") </code>
To już nie działa, ponieważ pojawia się komunikat o błędzie:
<code>Error in postgresqlNewConnection(drv, ...) : RS-DBI driver: (could not connect postgres@localhost on dbname "test" ) Error in !dbPreExists : invalid argument type </code>
Zakładam, że to z mojej strony błąd operatora, ale nie potrafię zrozumieć, jakie argumenty należy podaćsqldf
tak, że po prostu skupia się na ramce danych i nie próbuje połączyć się z niczym innym.