You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求在rlistings列表中按key_cols分组间添加空行

解决rlistings分组间添加空行的问题

要在rlistings生成的列表中按key_cols指定的分组添加空行,可通过预处理数据集实现,以下是具体方案:

核心思路

rlistings本身没有内置的组间空行参数,我们可以先在数据框的每个分组末尾插入一行空数据(NA值),再基于处理后的数据集生成列表,以此实现分组间的分隔效果。

代码实现

1. 按多分组(USUBJID + AETOXGR)添加空行

library(rlistings)
library(dplyr)

adae <- ex_adae

# 预处理数据:每个分组末尾插入空行
adae_with_blank <- adae %>%
  group_by(USUBJID, AETOXGR) %>%
  group_modify(~ bind_rows(.x, tibble(!!!set_names(rep(NA, ncol(adae)), colnames(adae))))) %>%
  ungroup() %>%
  slice(-n())  # 移除最后一行多余的空行

# 生成带分组空行的列表
lsting <- as_listing(
  df = adae_with_blank,
  disp_cols = c("ARM", "AGE", "SEX", "RACE", "AEDECOD", "AESEV"),
  key_cols = c("USUBJID", "AETOXGR")
)

head(lsting, 20)

2. 按单一分组(仅USUBJID)添加空行

如果只需要按受试者ID(USUBJID)分隔,调整group_by的参数即可:

adae_with_blank <- adae %>%
  group_by(USUBJID) %>%
  group_modify(~ bind_rows(.x, tibble(!!!set_names(rep(NA, ncol(adae)), colnames(adae))))) %>%
  ungroup() %>%
  slice(-n())

代码说明

  • group_modify:遍历每个分组,在每组数据后绑定一行全为NA的空行
  • slice(-n()):移除最后一行多余的空行,避免列表末尾出现不必要的空白
  • 生成的列表会在每个目标分组后显示空行,大幅提升不同组内容的可读性

内容的提问来源于stack exchange,提问作者Huan Lu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 17:52:40