簡體   English   中英

如何正確設置R以從PostgreSQL查詢本地數據幀?

[英]How to properly setup R to query local data frames from PostgreSQL?

我使用sqldf包已經有一段時間了,它使用了默認的SQLite驅動器。

但是,現在我想利用PostgreSQL的窗口函數。 我已經安裝了RPostgresSQL,並且我認為我正確使用了sqldf文檔指定的選項。 但是,即使我嘗試執行一個簡單的查詢來指定是否指定驅動器和dbname,也會返回錯誤消息:

library(RPostgreSQL)
library(sqldf) # the R console returns "sqldf will default to using PostgreSQL"

df = data.frame(color=c("red","blue"),value=c(10,20))

sqldf("select * from df")

sqldf("select * from df",drv="PostgreSQL",dbname=getOption("sqldf.RPostgreSQL.dbname"))

返回的錯誤消息如下:

postgresqlNewConnection(drv,...)中的錯誤:RS-DBI驅動程序:(無法在dbname“ test”上連接postgres @ localhost)!dbPreExists中的錯誤:無效的參數類型

我想念什么?

好的,我弄清楚了如何使其工作。 按照@akrun的評論,必須創建一個“測試”數據庫,但是,這還不夠。 您還必須在R中設置以下選項,然后才能在sqldf中運行任何查詢(在此處獲得解決方案)

options(sqldf.RPostgreSQL.user = "postgres", 
        sqldf.RPostgreSQL.password = "postgres",
        sqldf.RPostgreSQL.dbname = "test",
        sqldf.RPostgreSQL.host = "localhost", 
        sqldf.RPostgreSQL.port = 5432)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM