R语言 如何使用XLSX包向合并的单元格添加文本
合并是在excel表中合并两个或多个单元格的操作。因此,为了使用xlsx包将数据插入这些合并的单元格,我们有一个名为addMergingRegion()的函数来合并特定区域的单元格,并且addDataFrame()在合并的区域添加数据框/文本。
在 R中使用xlsx包为合并的单元格添加文本的步骤
第1步: 首先,我们需要安装并加载xlsx包。
# install required packages
install.packages("xlsx")
# Load the installed Package
library(xlsx)
第2步: 接下来我们需要创建一个工作簿,稍后我们将更新该创建工作簿的数据。要做到这一点,我们在 R编程语言 中有一些函数 。
createWorkbook(): 创建一个空的工作簿
语法 : createWorkbook(creator, title)
其中 。
- creator – 工作簿的创建者(默认为登录用户名)
- title – 工作簿的标题在此指定。
createSheet(): 用于在工作簿中创建一个带有工作表名称的工作表
语法 :createSheet(object, name)
其中。
- object – 需要使用的工作簿
- name – 这里指定了工作表的名称
# Creation of empty Workbook
work_book=xlsx::createWorkbook()
# Creation of sheet in the workbook(
sheet = xlsx::createSheet(work_book,"Sheet1")
第3步: 创建工作表后,我们需要合并单元格,并在合并的区域添加文本。所以在我们的例子中,我们将合并第5行的单元格,从第3列到第6列,并在那里添加文本,使用的是
addMergedRegion(): 用来合并指定区域下的单元格。
语法 :addMergedRegion(sheet,startRow,endRow,startColumn,endColumn)
其中。
- sheet – 工作表在这里被指定
- startRow - 用来指定合并单元格的起始行
- endRow - 用于指定合并单元格的结束行
- startColumn – 用于指定合并单元格的起始列
- endColumn – 用于指定合并单元格的结束列
addDataFrame(): 用于在指定工作表中添加一个数据框。
语法 :addDataFrame(x,sheet,col.names,row.names)
其中。
- x – 要添加到工作表的数据框架
- sheet – 需要指定数据的工作表
- col.names – 如果x的列名要和x一起写到文件中,则为TRUE,否则为FALSE
- row.names – 如果x的行名要和x一起写到文件中,则为TRUE,否则为FALSE 。
在addDataFrame()函数中,我们需要将 矩阵,因为默认情况下,add dataframe()函数将在第一个单元格中追加文本,所以要在合并的位置追加,我们需要在该矩阵中指定数据,并将该数据插入到 excel文件。
# Merging cells of the sheet of 5th
# and 6th row and 3rd to 7th column
xlsx::addMergedRegion(sheet = sheet,
startRow = 5,
endRow = 6,
startColumn = 3,
endColumn = 6)
# Creating a blank matrix and initializing
# it with the desired data.
m = matrix(nrow = 7, ncol = 10)
m[5: 6, 3: 6] <-"Geeks For Geeks is highly Informative"
现在,让我们把上述数据框架添加到我们先前创建的工作表中,然后我们可以保存该excel文件,然后用MS Excel打开它来查看输出。
# Addition of dataframe to the sheet
# Finally save the workbook
xlsx::addDataFrame(m, sheet=sheet,
col.names=F,
row.names=F)
xlsx::saveWorkbook(work_book, "Sample.xlsx")
输出 。