gtsummary 和 tableone 医学论文表1怎么做:R 统计报告、P值、效应量和可复核输出
面向医学论文表1和统计报告,比较 gtsummary 与 tableone 的使用场景、变量处理、P值、效应量和可复核输出。
30 秒结论
先判断再细读面向医学论文表1和统计报告,比较 gtsummary 与 tableone 的使用场景、变量处理、P值、效应量和可复核输出。
适合谁
适合想少走弯路、快速建立可执行科研流程的医学科研用户。
先做什么
先用一个真实任务小范围试跑,再决定是否扩展到整个课题或团队。
小心什么
不要只看工具名和功能清单,优先核验数据来源、可复现性、隐私风险和最终产出质量。
读完这篇后,先搭一个论文骨架
先写问题链,再填 IMRaD;不要一开始就让 AI 扩写大段正文。
医学论文结构草稿
- 一句话研究问题:谁、什么干预/暴露、比较什么、看什么结局
- ________________
- 引言最后一段:为什么这个问题仍然需要回答
- ________________
- 方法可复现要点:数据来源、纳排标准、主要变量、统计方法
- ________________
- 结果主线:最先回答哪个问题,哪些结果只是补充
- ________________
- 讨论边界:能推出什么,不能推出什么,下一步怎么验证
- ________________
投稿 / 组会前检查
- 每一节是否都回答一个明确问题
这页解决什么问题
医学论文的表1通常看起来只是基线特征表,但实际包含变量定义、分组逻辑、统计检验、缺失值处理、格式导出和可复核记录。使用 R 做表1时,tableone 和 gtsummary 是常见选择,但它们适合的工作方式并不完全相同。
这页面向需要用 R 输出医学论文表1、回归表和投稿前统计结果的研究生、医生和数据分析人员。重点不是给出临床建议,而是帮助你把统计报告流程做得更清楚、更容易复核。
先明确表1不是自动生成的装饰表
表1的核心任务是描述研究对象,而不是证明疗效或直接支持临床决策。年龄、性别、疾病分期、实验室指标、用药史、随访时间等变量,应先回到研究方案、数据字典和论文方法部分确认含义。
任何医学结论都必须回查原始论文、PMID 或 DOI、研究方法、样本来源、纳入排除标准、结局定义和统计方法。工具只能帮助整理和呈现数据,不能替代对研究设计和证据质量的判断。
tableone 和 gtsummary 怎么选
tableone 更偏向快速生成传统医学论文表1,适合基线特征描述、分组比较和标准化差异。它的输出风格直接,学习成本相对低,适合先把研究队列的主要变量检查一遍。
gtsummary 更偏向完整的统计报告工作流,除了表1,还适合回归模型、单因素分析、多因素模型、列标签、脚注、置信区间和不同导出格式。它在投稿表格、补充材料和可复核报告中更灵活。
| 场景 | 更适合的工具 | 原因 |
|---|---|---|
| 快速生成医学论文表1 | tableone | 接口直接,适合按分组输出连续变量和分类变量 |
| 需要表1、回归表和模型结果统一风格 | gtsummary | 能连接 tbl_summary、tbl_regression 和导出流程 |
| 重点报告标准化差异 SMD | tableone | 常用于倾向评分、队列平衡性检查和组间差异描述 |
| 需要较多标签、脚注和投稿格式调整 | gtsummary | 格式控制和表格后处理更方便 |
| 刚开始做数据清洗和变量核对 | 两者都可以 | 关键是先确认变量类型、缺失值和分组定义 |
实用工作流
一个稳妥的流程是先整理数据字典,再决定哪些变量进入表1,最后才写 R 代码。不要在代码里临时猜测分类变量、连续变量或单位,否则后续解释会很难追踪。
- 确认研究问题、暴露或分组变量、主要结局和样本范围。
- 建立变量清单,标注连续变量、分类变量、有序变量、日期变量和派生变量。
- 检查缺失值、异常值、重复记录、单位换算和极端值。
- 决定连续变量用均值标准差还是中位数四分位数,并记录依据。
- 使用 tableone 或 gtsummary 生成初版表1,先服务于数据核查。
- 根据统计方案补充 P 值、效应量、95%CI 或标准化差异。
- 导出为 Word、HTML、CSV 或可嵌入报告的格式,并保留 R 脚本和包版本。
- 投稿前让统计人员或共同作者核对方法、样本、结局和结果解释。
变量类型和分组是最容易出错的地方
表1错误常常不是工具造成的,而是变量类型没有定义清楚。例如二分类变量被当作连续变量,分级变量被当作普通无序分类变量,日期变量没有转换为随访时间,或者多个编码值代表同一种临床含义。
分组变量也要提前确认。病例对照研究、队列研究、随机分组、治疗暴露组、结局发生组,对表1的解释完全不同。组间 P 值是否应该出现,也要根据期刊要求和统计方案决定。
P值、效应量和95%CI如何处理
P 值可以帮助描述组间差异,但不应把表1变成结论表。尤其在非随机研究中,基线差异的解释要结合混杂因素、样本量、测量误差和研究设计,而不是只看是否小于 0.05。
效应量、标准化差异和 95%CI 往往比单独的 P 值更有信息量。tableone 常用于输出标准化差异,gtsummary 则更适合把模型估计、置信区间和脚注说明合并到同一套报告格式中。
缺失值和可复核输出
缺失值不应只在代码中被静默排除。表1中是否展示缺失数量、缺失比例、完整病例数或插补前后的样本数,应与方法部分一致,并能从原始数据处理脚本追溯。
可复核输出至少应包括原始数据版本、清洗脚本、分析脚本、R 版本、关键包版本、表格导出文件和结果生成日期。对于多人协作项目,可以把方法页、工具页和资源页串联起来管理,相关入口可放在 工具、方法 和 资源 中。
与 jamovi、JASP、easystats 和其他 R 流程的关系
如果团队成员不熟悉 R,jamovi 和 JASP 可以用于初步统计和结果核查;如果希望在 R 中获得更一致的模型解释,easystats 生态可以补充模型诊断、参数整理和报告。它们不是互相排斥的选择,而是可以按项目阶段组合使用。
在 agent2research.com 的内容结构中,这类页面适合与 比较、专题 和医学统计检查清单互相链接。这样读者可以从具体工具进入更完整的统计报告方法,而不是只复制一段表格代码。
风险和边界
tableone 和 gtsummary 不能判断研究设计是否合理,也不能自动发现选择偏倚、信息偏倚、混杂、过度调整、模型不收敛或结局定义错误。它们生成的表格必须由研究者结合方案、原始论文和统计背景解释。
这页不提供临床建议,也不替代统计审稿、伦理审查或医学专业判断。涉及诊断、治疗、预后或指南推荐的结论,必须核对原始论文、PMID 或 DOI、方法、样本、结局和统计分析,并结合具体临床场景审慎解读。
投稿前检查清单
- 变量名称、单位、分类水平和参考组是否与方法部分一致。
- 样本量、分组人数、缺失值和排除记录是否能追溯。
- 连续变量的展示方式是否符合分布特征和期刊要求。
- 分类变量的百分比分母是否清楚,是列百分比、行百分比还是总体百分比。
- P 值、效应量、标准化差异和 95%CI 是否有明确统计方法。
- 表格脚注是否说明检验方法、缺失值处理和缩写。
- 导出文件是否与 R 脚本运行结果一致,并保留包版本信息。
如果目标只是快速输出表1,可以从 tableone 开始;如果目标是形成从表1到回归表再到投稿文件的完整链路,gtsummary 通常更合适。真正重要的是让每一个数字都能被解释、复现和回到研究问题本身。
相关工具推荐
延伸阅读
从方法到实践
准备开始检索文献?
超能文献支持中文检索全球文献、边读边译、AI提取关键信息,帮你把学到的方法用起来。
试试超能文献