Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ROBDC SqlSave:如何将数据导出到Excel工作表中?_Excel_List_R_Plyr_Rodbc - Fatal编程技术网

ROBDC SqlSave:如何将数据导出到Excel工作表中?

ROBDC SqlSave:如何将数据导出到Excel工作表中?,excel,list,r,plyr,rodbc,Excel,List,R,Plyr,Rodbc,我正在尝试将数据从R导出到一个Excel文件(到不同的工作表): 问题在于tablename=x[1],如何将列表名称转换为工作表名称?您必须以某种方式向函数提供名称(g)。最简单的解决方案类似于mapply 此外,无论出于何种原因,Excel ODBC驱动程序似乎不喜欢工作表名称中的点,即使Excel本身可以处理它们。所以你必须把名字改成“Sepal.Length”或类似的名字 全文: g <- lapply(iris, function(x) as.data.frame(table(x

我正在尝试将数据从R导出到一个Excel文件(到不同的工作表):


问题在于
tablename=x[1]
,如何将列表名称转换为工作表名称?

您必须以某种方式向函数提供
名称(g)
。最简单的解决方案类似于
mapply

此外,无论出于何种原因,Excel ODBC驱动程序似乎不喜欢工作表名称中的点,即使Excel本身可以处理它们。所以你必须把名字改成“Sepal.Length”或类似的名字

全文:

g <- lapply(iris, function(x) as.data.frame(table(x)))
names(g) <- gsub("\\.", "_", names(g))
xl <- odbcConnectExcel("c:/temp/iris.xls", readOnly=FALSE)
mapply(sqlSave, dat=g, tablename=names(g),
       MoreArgs=list(channel=xl, rownames=FALSE))
odbcCloseAll()
g
Error in sqlColumns(channel, tablename) : 
  ‘1:35’: table not found on channel
g <- lapply(iris, function(x) as.data.frame(table(x)))
names(g) <- gsub("\\.", "_", names(g))
xl <- odbcConnectExcel("c:/temp/iris.xls", readOnly=FALSE)
mapply(sqlSave, dat=g, tablename=names(g),
       MoreArgs=list(channel=xl, rownames=FALSE))
odbcCloseAll()