R語言保存數(shù)據(jù)框為Excel表格

  1. 加載R包
library(openxlsx)
  1. 寫一個保存為Excel表格的函數(shù)
#設(shè)置一個保存表格函數(shù)
save_excel_with_style <- function(data_frame, file_name) {
  # 創(chuàng)建一個Arial字體的樣式
  arial_style <- createStyle(fontName = "Arial", fontSize = 10,
                             halign = "center")
  # 創(chuàng)建一個標(biāo)題樣式
  title_style <- createStyle(fontName = "Arial", fontSize = 10, 
                            fontColour = "#FFFFFF", 
                            fgFill = "#4682b4",
                            halign = "center"
                            )
  # 創(chuàng)建工作簿和工作表
  wb <- createWorkbook(creator = "")
  addWorksheet(wb, "Sheet 1")
  # 寫入數(shù)據(jù)
  writeData(wb, "Sheet 1", data_frame)
  # 計算并設(shè)置每一列的寬度
  for (col in seq_along(data_frame)) {
    max_width <- max(nchar(as.character(data_frame[[col]])), na.rm = T)
    # 計算列中最大字符長度
    setColWidths(wb, "Sheet 1", col, max(max_width, nchar(colnames(data_frame)[col])) + 2)
    # 設(shè)置列寬
  }
  # 應(yīng)用樣式到所有的單元格
  addStyle(wb, "Sheet 1", style = arial_style, 
           rows = 1:(nrow(data_frame) + 1), cols = 1:ncol(data_frame), gridExpand = T)
  # 應(yīng)用樣式到標(biāo)題行
  addStyle(wb, "Sheet 1", style = title_style, 
           rows = 1, cols = 1:ncol(data_frame), gridExpand = T)
  # 設(shè)置凍結(jié)窗格
  freezePane(wb, "Sheet 1", firstRow = T) 
  # 保存工作簿
  saveWorkbook(wb, file_name, overwrite = T)
}
  1. 保存導(dǎo)出
save_excel_with_style(mtcars, "mtcars.xlsx")
#前面為數(shù)據(jù)框名,后面為表格名
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容