R语言高效数据处理-自定义格式EXCEL数据输出

注:以下代码均为实际数据处理中的笔记摘录,所以很零散,

将就看吧,这一篇只是代表着我还在,所以可能用处不大,这一段时间都很煎熬!

在实际数据处理中为了提升效率,将Excel报表交付给需求方时减少手动调整的环节很有必要

1、excel工作薄创建保存

R 复制代码
#工作薄创建
data_deal_main01<- createWorkbook()
工作薄中添加新的sheet表,当需要在同一个工作薄添加多个时可以直接赋予表格名称新增

addWorksheet(
  data_deal_main01,
  'data_deal_c01',
  gridLines = TRUE,#是否隐藏单元格网格线
  tabColour = NULL,#工作表选项卡颜色设置
  zoom = 100,#工作表缩放大小
  visible = TRUE)#工作表是否隐藏
#工作薄保存
saveWorkbook(data_deal_main01, "data_deal_main01_donefile.xlsx", 
            overwrite = TRUE)#是否重写

2、工作表单元格格式配置与添加

R 复制代码
#创建单元格格式
set_style <- createStyle(fontColour = '#FFFFFF', #字体颜色
                            fgFill = '#2f4cc3',#单元格填充颜色
                            halign = 'center', #单元格数据水平对齐
                            valign = 'bottom',#单元格数据垂直对齐
                            textDecoration = 'bold',#字体加粗
                            border = 'TopBottomLeftRight')#单元格边框的设置
R 复制代码
#1.1单独添加:对指定单元格添加已配置的格式
addStyle(data_deal_main01,
         sheet='data_deal_c01', 
         style=set_style, 
         rows=2:100, 
         cols=1:4, 
         gridExpand = FALSE, #将格式应用于参数中的行列组合,否则格式添加要求行列数相等
         stack = FALSE)#应用的单元格格式是对已有的合并还是替换


#1.2写入数据时添加:将数据写入工作薄,并附带格式(没有对整个表格设定格式的参数)
writeData(data_deal_main01, #工作薄名称
            'data_deal_c01',#sheet表名称 
            data_eg_test,#写入的数据集
            headerStyle=set_style,#已经配置的表头格式
            borders = openxlsx_getOp('borders','all'),#数据边框线覆盖范围
            borderStyle = openxlsx_getOp('borderStyle','thin'))#数据边框线格式

3、工作表字段添加筛选功能的3种方式

R 复制代码
单独对指定表的指定列添加筛选
addFilter(data_deal_main01, #工作薄名称
         'data_test4', #工作表名称
         row = 1,#所在的行
         cols = 1:3)#对应哪些列添加筛选
R 复制代码
#对工作表写入数据时添加筛选,但是是给所有字段
writeData(data_deal_main01, 'data_test4', x = iris[1:100,], withFilter = TRUE)
R 复制代码
#这个函数在工作表写入数据时会自动为字段添加筛选
writeDataTable(data_deal_main01, 'data_test4', iris[1:100,])

4、工作表的复制克隆

R 复制代码
cloneWorksheet(data_deal_main01, 
                'data_deal_c02', #新表名称
                 clonedSheet ='data_deal_c01')#复制的对象表

5、同一个工作表写入多份数据

同一个sheet中写入多个数据,多份数据要给定开始列,写入数据则不会覆盖已有数据

createnameregion创建区域数据的名称,便于在同一个sheet中写入多份数据

R 复制代码
createNamedRegion(
  data_deal_main01 = data_deal_main01,
  sheet = 1,
  name = "data_deal_c04",
  rows = 1:(nrow(data_deal_c04) + 1),
  cols = 1:ncol(data_deal_c04)
)

就像下面的数据输出示例

6、设置单元格列宽与有条件的格式化单元格

R 复制代码
#设置表格列宽度
setColWidths(
  data_deal_main01,
  sheet='data_deal_c01',
  cols=1:5,
  widths =15)
#格式化表格数据
conditionalFormatting(wb,'data_deal_c01',
                    cols=1:5,
                    rows=1:nrow(data_deal_c01)+1,
                    rule='>=0',
                    style=sheet_style)
#数据写入
writeData(data_deal_main01, 'data_deal_test1', data_deal_c01,startCol=1)
writeData(data_deal_main01, 'data_deal_test1', data_deal_c02,startCol=7)

慢慢调整更新吧,都是基础的,也有点用!

相关推荐
Michelle80232 天前
R语言 for循环
开发语言·r语言
没有梦想的咸鱼185-1037-16633 天前
AI大模型支持下的顶刊绘图|散点图、气泡图、柱状图、热力图、柱状图、热力图、箱线图、热力图、云雨图、韦恩图、瀑布图、神经网络图、时间序列或分布展示
人工智能·神经网络·arcgis·信息可视化·数据分析·r语言·ai写作
青春不败 177-3266-05203 天前
基于R语言BIOMOD2及机器学习方法的物种分布模拟与案例分析
随机森林·机器学习·r语言·生态学·植被遥感·生物多样性·物种分布
青春不败 177-3266-05205 天前
R语言与DSSAT作物模型
r语言·生态学·作物模型·数字农业·dssat模型·农业科学
asyxchenchong8885 天前
农业系统模拟APSIM全流程详解(气象/土壤/碳氮平衡/NG版本)附R批量处理代码
开发语言·r语言
idolao9 天前
R语言4.4.3统计分析软件安装教程:详细步骤+自定义安装路径(64位)
开发语言·r语言
做cv的小昊9 天前
【TJU】应用统计学——第四周作业(2.3 C-R不等式、2.4区间估计)
c语言·人工智能·算法·机器学习·数学建模·r语言·概率论
爱技术的阿呆11 天前
R code debug 和 study
开发语言·r语言
Q一件事11 天前
R语言制图-相关性及关系网络图
开发语言·r语言
weixin_4469340311 天前
多分类暴露变量的亚组分析森林图功能上线了,R语言搞不了风暴统计平台一键搞定
人工智能·机器学习·分类·数据挖掘·r语言