将R数据帧导出到MS Access
我正在尝试将数据帧从R导出到MS Access,但在我看来,没有包可用于执行此任务。有没有办法直接将数据帧导出到Access?任何帮助都将不胜感激。这是软件包 数据库必须已经存在(至少在我的情况下)。所以你必须先创建它。 它必须是access database 2000版本,扩展名为.mdb 以下是一个例子:将R数据帧导出到MS Access,r,R,我正在尝试将数据帧从R导出到MS Access,但在我看来,没有包可用于执行此任务。有没有办法直接将数据帧导出到Access?任何帮助都将不胜感激。这是软件包 数据库必须已经存在(至少在我的情况下)。所以你必须先创建它。 它必须是access database 2000版本,扩展名为.mdb 以下是一个例子: ImportExport::access_export("existing_databse.mdb",as.data.frame(your_R_data),
ImportExport::access_export("existing_databse.mdb",as.data.frame(your_R_data),
tablename="bob")
“bob”是要在数据库中创建的表的名称。当然,选择您自己的名称,它必须是一个不存在的表
它还将添加名为rownames的第一列,它只是一个索引列
请注意,创建一个.accdb文件,然后将扩展名更改为.mdb将不起作用^^^您必须打开它并将其另存为.mdb。我添加了.data.frame(),但是如果您的数据已经是一个,那么就不需要了
有一种方法可以使用.accdb文件,直接使用sqlSave(由ImportExport内部使用)并从RODBC包中指定驱动程序。这是@BenJacobson评论中的链接。但是上面的解决方案对我有效,而且只有一行。下面的解决方案适用于中型数据集,但如果MyRdataFrame对于2GB访问限制或转换类型错误来说太大,则可能会失败
library(RODBC)
db <- "C:Documents/PreviouslySavedBlank.accdb"
Mycon <- odbcConnectAccess2007(db)
sqlSave(Mycon, MyRdataFrame)
库(RODBC)
dB你的问题看起来不像直接与编程有关,所以请考虑使用另一个站点,因为这个可能的副本对我来说不起作用,因为1)我的文件路径太长,所以我必须先创建一个DB连接,2)SqLaveID给出了一个错误,参数1必须有名字。