CME 麻醉论坛内置了R 服务 的统计分析与论文图绘制工具。用户上传 CSV 后,系统会创建统计任务,并调用内网 R 服务生成 HTML 报告、DOCX 表格/摘要、JSON 结果和日志文件

本指南适用于以下场景:

  • 基线表与结局比较
  • 相关分析、回归分析
  • 小样本 Firth Logistic 回归
  • 倾向评分分析
  • 学习曲线绘图
  • 时间序列趋势图绘制(如血气、乳酸、围术期监测指标趋势图)

一、入口与基本流程

进入统计分析页面后,先上传一个 .csv 文件。系统会为该文件创建一个独立任务,并保存输入目录、输出目录和任务参数。任务运行后,可生成报告 HTML、结果 JSON、表格 DOCX 和日志文件。

标准流程如下:

  1. 上传 CSV
  2. 选择统计模板
  3. 创建任务
  4. 在任务详情页设置参数
  5. 保存参数并提交统计
  6. 查看或下载输出文件

如果已有旧任务,也可以直接复用旧任务的 CSV,无需重新上传。


二、支持的模板

当前系统可自动识别模板目录,并在上传页显示模板名称。现有模板包括:

  • Table 1(基线表|自动检验)
  • Table 2(结局比较|自动检验)
  • 相关分析(自动方法选择)
  • 相关分析(方法指定)
  • 回归分析(自动模型选择)
  • 回归分析(模型指定)
  • Firth penalized logistic regression
  • Assumption Check
  • Learning Curve
  • 倾向评分(PSM / IPTW)

其中,时间序列论文图建议使用新模板 serial_trend_plot病例顺序趋势图 / 学习曲线建议使用 learning_curve_basiclearning_curve_basic 模板本身已经支持二分类结局的 logistic spline smoothing 和连续变量的 loess smoothing。


三、CSV 文件准备要求

建议使用 UTF-8 编码的 CSV,首行必须是变量名。系统会在建任务时自动读取 CSV 表头,作为后续下拉框和多选框的候选变量。

推荐做法:

  • 每一列只放一个变量

  • 时间变量单独成列

  • 分类变量的取值尽量统一

  • 缺失值留空,不要混用 NAnull-

  • 列名尽量简洁、明确、英文优先,例如:

  • DateTime

  • pH

  • PaCO2_mmHg

  • BicarbonateActual_mmol_L

  • Lactate_mmol_L


四、任务详情页怎么用

任务详情页是整个工具的核心。这里可以:

  • 保存参数
  • 自动提交统计
  • 在线查看 HTML 报告
  • 下载 HTML / DOCX / JSON / LOG
  • 复制系统自动生成的 Methods 段落文本

如果统计完成后想重新调整参数,不必新建任务,可以直接在任务详情页修改参数并重跑统计。 如果想基于同一份 CSV 换一个模板分析,可以点击 “基于当前 CSV 重新分析”


五、分析子集怎么设置

很多模板都支持先筛选样本,再做统计。系统提供两个参数:

  • subset_col:分析子集变量
  • subset_include_values:纳入取值

也就是说,您可以先限定某一列取某些值,再在该子集上做后续分析。系统会先做预检查,包括:

  • 子集列是否存在
  • 取值是否有效
  • 筛选后是否还有样本
  • 某些模板下分组变量或结局变量是否仍满足建模条件

例如:

  • 只分析 cohort_role01 的病例
  • 只分析某一时间段内样本
  • 只分析某一亚组

这类筛选不会修改原始 CSV,只在本次统计任务中生效。


六、常用统计模板说明

1)Table 1:基线表

用于描述总体或分组后的基线特征。 连续变量会报告 mean ± SDmedian [IQR];分类变量报告 n (%)。 组间比较方法由系统自动判断,包括 t 检验、ANOVA、Welch、Wilcoxon、Kruskal–Wallis、χ² 或 Fisher。

2)Table 2:结局比较

用于预设结局在各组之间的比较。 可指定 outcome_cols,也可让系统自动选择候选变量。连续结局按组报告均值,分类结局按组内分母报告 n (%)。

3)Correlation

用于相关分析。 primary_outcome 作为 X 变量,白名单变量作为一个或多个 Y 变量。方法可自动在 Pearson 和 Spearman 之间切换,也可以手工指定。

4)Regression

用于线性或 Logistic 回归。 primary_outcome 为 Y,group_col 为主要暴露变量,白名单变量作为协变量。自动模型模板会根据结局类型自动选择线性或 Logistic。

5)Firth penalized logistic regression

适用于小样本、完全分离或近完全分离的二分类结局建模。结局变量必须是二分类变量。

6)Assumption Check

用于正态性和方差齐性前置检查。可帮助判断后续更适合参数法还是非参数法。

7)Causal PS

用于倾向评分分析。支持 IPTWPSM,并可设置 ATE / ATTstabilizedtrim_quantilecaliperratio 等参数。


七、Learning Curve 模板怎么用

learning_curve_basic 适合画病例顺序趋势图,横轴是筛选后样本的行顺序 1...N,纵轴是选定的绘图变量。

它的特点是:

  • 连续变量:使用 loess 平滑
  • 二分类变量:使用 logistic spline smoothing
  • 支持 binary_spline_df
  • 支持 phase_separator
  • 支持左右阶段标签,如 developmental / validation

适用场景:

  • 学习曲线
  • 病例序列成功率趋势
  • 补充材料中的 case-order 图

八、serial_trend_plot 模板怎么用

serial_trend_plot 适合画真实时间轴上的趋势图,尤其适合论文补充图,例如:

  • 血气指标随时间变化图
  • 乳酸趋势图
  • 围术期 ETCO₂ / SpO₂ / 血流动力学趋势图
  • ICU 连续实验室指标图

推荐参数设置思路:

  • 时间列:选择时间变量,如 DateTime
  • 左轴变量:放主变量,如 pHLactate_mmol_L
  • 右轴变量:放次变量,如 PaCO2_mmHgBicarbonateActual_mmol_L
  • 事件线:填写关键时间点及标签,如 VF / CPR startsROSC
  • 是否标注极值:用于提示峰值或最低值

譬如对于稿件的补充图:

  • Supplementary Figure S1

  • 左轴:pH

  • 右轴:PaCO2_mmHgBicarbonateActual_mmol_L

  • 事件:VF / CPR startsROSC

  • Supplementary Figure S2

  • 左轴:Lactate_mmol_L

  • 不设置右轴

  • 事件:同上


九、轴标签怎么填写最稳妥

图中显示的文字分为两类:

  • 变量选择:决定画哪一列数据
  • 轴标签:决定坐标轴显示什么文字

这两者不是一回事。 例如,把左轴标签改成“乳酸”,并不会自动把绘图变量从 pH 改成 Lactate_mmol_L。真正决定数据列的是左轴变量选择框。

因此,改图时一定先改:

  1. 左轴变量 / 右轴变量
  2. 再改左轴标签 / 右轴标签

十、化学式、上下标、特殊字符怎么填

对于化学式类标签,建议直接在网页里填写普通文本,不要手工输入 expression(...)。 例如:

  • PaCO₂/HCO₃⁻
  • PaCO2/HCO3-
  • ETCO₂
  • SpO₂

当前模板会在内部处理常见医学标签显示问题,因此一般不需要您手工写 R 的 plotmath 表达式。 这样做的好处是:

  • 避免 PDF 或 PNG 中出现乱码
  • 避免 Docker 字体环境导致上标下标显示为方框
  • 减少手工输入错误

十一、Methods 文案可以直接复制吗

可以。任务详情页会根据模板和当前参数,自动生成一段适合放进论文的 Methods / Statistical analysis 文案,其中还会自动附带 R 版本与平台信息。

这对于以下场景很方便:

  • 初稿撰写
  • 补充方法学说明
  • 图表统计方法统一表述

但正式投稿前仍建议您人工再看一遍,确认与论文正文口径完全一致。


十二、输出文件分别有什么用

系统常见输出包括:

  • report.html:完整可视化分析报告
  • tables.docx:适合复制到论文的表格或摘要
  • result.json:便于程序读取的结构化结果
  • log.txt:排查报错最重要的文件

画图模板通常还会额外生成图片文件,便于直接用于论文或补充材料。


十三、常见问题与排查

1)未读取到 CSV 列名

通常是:

  • 文件不是 CSV
  • 编码异常
  • 首行不是表头

2)分析子集筛选后无样本

说明 subset_colsubset_include_values 组合后没有保留任何观测。系统会直接阻止提交。

3)Firth / 因果推断模板报变量水平不对

说明筛选后:

  • 处理变量不再是 2 个水平
  • 结局变量不再是 2 个水平 系统会在提交前做预检查并提示。

4)图改了标签但数据没变

通常是因为只改了轴标签,没有改真正的绘图变量。

5)图上的特殊字符显示成方框

建议不要手工输入 expression(...),直接填普通文本标签。

6)任务返回成功但没生成结果

优先下载 log.txt 看最后几行报错。系统本身也会在 artifact 缺失时把任务判为失败,并把错误写入任务详情页。


十四、推荐使用习惯

为了让统计与绘图更稳定,建议:

  • 一次只验证一个模板
  • 先用小 CSV 试跑
  • 变量名尽量统一
  • 分类变量先在 CSV 中清洗好
  • 做图前先确认时间列格式
  • 论文图定稿时,先看 HTML,再下载最终图片

十五、适合论文补充图的典型用法

对于病例报告、回顾性研究和围术期监测论文,本工具特别适合生成下列补充材料图:

  • 血气时间序列图
  • 乳酸变化趋势图
  • 学习曲线
  • 事件前后监测指标变化图
  • 分阶段病例序列趋势图