Добавление фрейма данных на лист без пакета xlsx

В настоящее время я использую пакет xlsx для создания и изменения файлов Excel, но мне нужно избавиться от зависимости от Java. Я пробовал заменить пакет xlsx на пакет openxlsx, но не могу найти простого способа заменить функцию addDataFrame. Мой код выглядит так:

wb = createWorkbook()
sheet = createSheet(wb, "Sheet Name")
addDataFrame(data.frame(MyFile, check.names=FALSE), sheet=sheet, startColumn=1, row.names=FALSE)
saveWorkbook(wb, "MyWB.xlsx")

Есть ли в openxlsx какая-либо функция, которую я могу использовать для добавления фрейма данных на лист? Или в любой другой библиотеке, не зависящей от Java?


person Czyycz    schedule 29.04.2021    source источник


Ответы (1)


Мы используем writeData, чтобы добавить фрейм данных на рабочий лист. Например

# Create a workbook
wb <- openxlsx::createWorkbook()

# Create a worksheet
openxlsx::addWorksheet(wb, "iris_sheet")
# Write data frame to the worksheet
openxlsx::writeData(wb, "iris_sheet", iris)

# Create another worksheet
openxlsx::addWorksheet(wb, "mtcars_sheet")
# Write data frame to this worksheet
openxlsx::writeData(wb, "mtcars_sheet", mtcars)

# Save the whole workbook
openxlsx::saveWorkbook(wb, "./file.xlsx")
person s20012303    schedule 29.04.2021