解决方案必须是 R 语言。 相关问题正在为其他语言提供解决方案。 (例如,此处使用电子表格工具冻结顶行)
Excel 对应的
library(tidyverse)
mtcars %>% write_csv('IneedExcelNotCSV.csv')
部分代码冻结了顶行。
与 .xls(x) 类似格式的解决方案(例如 OpenOffice)也可以使用。 (.sxc?)
如果您使用
XLSX
R包另存为.xlsx文件,您可以添加
createFreezePane(sheet, 2, 1, startRow = 2, startColumn = 1)
第一行被冻结。
当使用
openxlsx
包将数据导出为 .xlsx 文件时,您可以通过 freezePane 参数冻结窗格:firstActiveRow
、firstActiveCol
、firstRow
和 firstCol
。
例如,要冻结顶行:
library(openxlsx)
write.xlsx(sheetname, file = filename, firstRow = TRUE) #freezes top row
write.xlsx(sheetname, file = filename, firstRow = TRUE, firstCol = TRUE) #freezes top row and first column
write.xlsx(sheetname, file = filename, firstActiveRow = 4, firstActiveCol = 3) #freezes fourth row and third column
openxlsx
还提供了有用的freezePane()
在程序化工作中。
library(openxlsx)
wb <- createWorkbook()
sheet <- "Example"
addWorksheet(wb, sheet)
writeData(wb, sheet, x = mtcars)
freezePane(wb, sheet , firstRow = TRUE, firstCol = FALSE) # freeze first row
saveWorkbook(wb, file = "Example.xlsx")
openxlsx2 提供
wb_freeze_pane()
来执行此操作。
library(openxlsx2)
# create workbook object
wb <- wb_workbook()
# add a new sheet
wb$add_worksheet("sheet")
# add data to show
wb$add_data(x = mtcars)
# indicate which to do
# see more in ?wb_freeze_pane
wb$freeze_pane(
first_row = TRUE
)
# visualize the result
wb$open()