Files

4.3 KiB
Raw Permalink Blame History

SSA-Executor 专家配置要素清单 (Configuration Specs)

文档版本: v1.0

创建日期: 2026-02-18

核心目标: 定义统计专家需要在“配置中心”为每个 R 工具录入的详细信息。

隐喻: 如果 R 代码是“药方”,这个配置单就是“药品说明书”。

1. 基础元数据 (Identity)

给这个 R 脚本一个系统内唯一的身份。

配置项 说明 示例
Tool Code 唯一标识符 (Primary Key) ST_T_TEST_IND
Tool Name 显示名称 独立样本 T 检验
Version 版本号 v1.0.2 (用于回滚)
R Script File 上传文件 t_test_ind.R (专家直接上传脚本)
Entry Function 入口函数名 run_analysis

2. 输入参数映射 (Input Contract)

告诉 Executor这个 R 脚本需要什么原料?

参数名 (JSON Key) R 函数参数名 数据类型 校验规则 (Validator) 默认值
group_col group_var String Must be column name -
val_col value_var String Must be numeric column -
conf_level conf_level Float 0.90 - 0.99 0.95
alternative alt String "two.sided", "less", "greater" "two.sided"

3. 统计护栏配置 (Guardrails Config) 核心

告诉 Executor在跑核心代码前先做什么体检

配置模式: 规则链 (Rule Chain)

  1. 检查项 (Check): Shapiro-Wilk Normality Test
    • 目标变量: val_col (按 group_col 分组)
    • 阈值 (Threshold): P < 0.05
    • 失败动作 (Action):
      • [ ] Block: 报错并终止 ("数据不正态,无法计算")
      • [ ] Warn: 继续执行,但在结果中标记警告
      • [x] Switch: 自动切换到工具 ST_WILCOXON (非参数检验)
  2. 检查项 (Check): Sample Size
    • 规则: Min(N) < 3
    • 失败动作: Block ("样本量太少,无法计算")

4. 输出结果定义 (Output Definition)

告诉 Executor跑完代码后要给用户看什么

4.1 结构化数据 (Table)

定义返回的三线表里包含哪些指标。

  • 指标 1: Statistic (t值 / F值)
  • 指标 2: P-Value (保留 3 位小数,<0.001 显示为 "<0.001")
  • 指标 3: Mean ± SD (描述性统计)
  • 指标 4: CI (95%) (置信区间)

4.2 图表配置 (Visualization)

定义 R 脚本生成的图表规范ggplot2 模板)。

  • 图表类型: Boxplot with Jitter (箱线图+散点)
  • X 轴映射: group_col
  • Y 轴映射: val_col
  • 配色方案: Nature / Lancet (期刊风格)
  • 其它元素: 是否标注 P 值?(Yes/No)

4.3 智能解读模板 (Narrative Template)

这是给 AI (Critic) 参考的“填空题”,或者是 R 直接生成的结论。

  • 模板:"本研究纳入 {{N}} 例样本。{{group_col}} 各组间 {{val_col}} 的差异 {{significance_text}} (t={{statistic}}, P={{p_value}})。具体而言,{{high_group}} 的均值 ({{mean_1}}) 显著高于 {{low_group}} ({{mean_2}})。"

5. 代码交付配置 (Code Handover)

告诉 Executor用户点击“下载代码”时给他什么

这是一个 glue 字符串模板,用于生成可复现的 R 代码。

# 模板示例
library(ggplot2)
library(stats)

# 1. 读取数据
data <- read.csv("your_data.csv")

# 2. 统计检验
res <- t.test({{val_col}} ~ {{group_col}}, data=data, var.equal={{var_equal}})
print(res)

# 3. 绘图
ggplot(data, aes(x={{group_col}}, y={{val_col}})) +
geom_boxplot(fill="#3C5488") +
theme_bw() +
labs(title="Difference Analysis")

6. 环境依赖 (Dependencies)

告诉 Executor运行这个脚本需要装什么包

  • Packages: ggplot2, dplyr, car, ggpubr
  • System Libs: libcairo2 (如果涉及特殊绘图)

7. 总结:专家的工作流

统计学专家在“配置中心”要做的事情就是:

  1. 上传 写好的 t_test.R。
  2. 勾选 这个脚本需要的输入参数(列名)。
  3. 设置 护栏P < 0.05 切换 Wilcoxon
  4. 粘贴 代码模板(供用户下载)。
  5. 预览 这一套配置是否能跑通测试数据。

这才是真正的“专家协同”。