この投稿から、リストを Excel ファイルの個別のワークシートとしてエクスポートするスクリプトを取得しました (以下のコード)。ここで、入力リスト名と出力ファイル名を指定して、この動作を再現する便利な関数にラップしたいと思います。
サンプルデータ:
var1 <- list('2003' = 1:3, '2004' = c(4:3), '2005' = c(6,4,1), '2006' = 1:4 )
現在のスクリプト:
require("XLConnect")
wb <- loadWorkbook("var1.xlsx", create = TRUE)
createSheet(wb, names(var1))
writeWorksheet(wb, var1, names(var1),header=FALSE)
saveWorkbook(wb)
免責事項: 私は赤面してこのような単純な質問をしますが、SO への他の多くの訪問者は、ここでこの情報を見つけたいと思うでしょう ;7)
EDIT :: すぐに使える関数:
save.excel <-function(.list, default = 'var1', path = ''){
require("XLConnect")
.name <- as.list(match.call())[2]
if(is.language(.name[[1]])) wb_name <- paste0(paste0(path, default, collapse = '/'), '.xlsx')
if(is.symbol(.name[[1]])) wb_name <- paste0(paste0(path, as.character(.name), collapse = '/'), '.xlsx')
wb <- loadWorkbook(wb_name, create = TRUE)
createSheet(wb, names(.list))
writeWorksheet(wb,.list, names(.list),header=FALSE)
saveWorkbook(wb)
}
以下のソリューションとの唯一の違いは、以前に手動で行っていなかった場合に備えて、関数内から要求されたライブラリとして XLConnect を追加したことです;7)