关于 cross-national
cross-national 是比较不同国家调查数据中暴露与结局关联的研究分析技能,面向开展跨国流行病学研究的人员。它分别分析各国复杂抽样数据,并通过效应量比值比较结果,而非合并国家数据。
主要功能
- 01映射跨调查变量
- 02准备 KNHANES 与 NHANES 数据
- 03按国家设置调查加权分析
- 04生成分层与剂量反应分析
- 05比较国家间效应量
适用场景
- 01比较韩国与美国调查中的暴露—结局关联
- 02检查变量在不同调查中的可比性
- 03生成加权基线表和跨国比较报告
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ aperivue/ medsci-skills --skill cross-national安装后在 Claude Code 中输入/cross-national确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
skill.ymlreferences/additional_variables.mdchns_coding.md详细介绍
跨国家比较研究技能
输入
- 研究问题:需要跨国家比较的暴露 → 结局关联
- 韩国数据路径:KNHANES CSV 文件
- 美国数据路径:NHANES CSV 目录(需要合并多个表)
- 协调表(可选):映射不同调查中变量的 CSV 文件
- 默认值:
/replicate-study的references/harmonization_knhanes_nhanes.csv
- 默认值:
参考文件
/write-paper的references/paper_types/cross_national.md— 写作模板/analyze-stats的references/analysis_guides/survey_weighted.md— 调查加权分析指南references/chns_coding.md— CHNS 文件、合并键、编码和警告;研究设计包含中国(3 国设计)时请阅读references/additional_variables.md— 哮喘、睡眠、身体活动、饮食、治疗和非 HDL 胆固醇的编码,以及综合评分(LE8)警告;研究使用其中任一变量时请阅读
工作流
阶段 1:研究定义
- 确认研究问题:暴露 → 结局
- 定义两个国家的变量编码:
- 暴露:PHQ-9、BMI 分类、吸烟等
- 结局:糖尿病、高血压、死亡率等
- 协变量:年龄、性别、教育、收入、吸烟、饮酒、肥胖、CVD
- 检查协调表中的变量可用性
- 输出:供用户审批的研究方案摘要
阶段 2:数据准备
切勿猜测变量名、数据集列名或变量编码。如果映射不确定,请输出 [VERIFY: variable_name],并请用户根据数据字典确认。
KNHANES(单个 CSV):
-
加载 CSV 并保留所有行 — 年龄 ≥20(或按方案规定)的限制将在第 3 步应用于设计
-
使用 KNHANES 编码派生变量:
变量 原始变量 编码 吸烟 BS3_1 1,2=当前吸烟;3=既往吸烟;8=从不吸烟 饮酒 BD1_11 2-6=经常饮酒(当前饮酒者);1=偶尔饮酒(过去一年未饮酒者);8=从不饮酒 肥胖 HE_obe 1-3=正常;4-6=肥胖(BMI≥25,亚洲标准界值) 抑郁 BP_PHQ_1~9 总分 ≥10 = 抑郁 糖尿病 HE_glu, HE_HbA1c, DE1_dg FPG≥126 或 HbA1c≥6.5 或 DE1_dg=1 CVD DI4_dg, DI5_dg, DI6_dg 任一 = 1 → 有 CVD 教育 edu 1-3=非大学;4=大学 收入 incm 四分位数(1=最低 … 4=最高):1-3=较低的 75%;4=最高四分位数 -
在完整文件上设置调查设计,然后限制分析域: des <- svydesign(id=~psu, strata=~kstrata, weights=~wt_itvex, nest=TRUE, data=df); des_ad <- subset(des, age >= 20). 切勿在 svydesign() 之前筛除行 — 删除行会改变标准误(参见
survey_weighted.md中的亚总体分析部分)
NHANES(多个 CSV):
-
按 SEQN 加载并合并各表(DEMO_J, DPQ_J, GHB_J, GLU_J, BMX_J, SMQ_J, ALQ_J, DIQ_J, MCQ_J, BPQ_J, BPXO_J)
-
使用 NHANES 编码派生变量。关键:通过 R
nhanesA包下载的 NHANES 数据使用文本标签,而非数字代码。变量 原始变量 编码(文本标签) 性别 RIAGENDR "Male" / "Female"(不是 1/2) 吸烟 SMQ020 + SMQ040 吸过 100 支香烟(SMQ020 "Yes" / "No")+ 目前吸烟(SMQ040 "Every day" / "Some days" / "Not at all") 饮酒 ALQ121 + ALQ111 经常饮酒(当前饮酒者):ALQ121 的任何频率("Never in the last year" 除外);偶尔饮酒(过去一年未饮酒者):"Never in the last year";从不饮酒(终生不饮酒者):ALQ111 == "No"(ALQ121 将为 NA) 肥胖 BMXBMI (BMX_J, kg/m²) ≥30(WHO 截止值,不是亚洲标准) PHQ-9 DPQ010~DPQ090 "Not at all"→0,"Several days"→1,"More than half the days"→2,"Nearly every day"→3;总分 ≥10 = 抑郁 糖尿病 LBXGLU (GLU_J,空腹子样本,mg/dL)、LBXGH (GHB_J,%)、DIQ010 LBXGLU≥126 | LBXGH≥6.5 | DIQ010=="Yes"(DIQ010:"Yes" / "No" / "Borderline")。重要:空腹血糖是 GLU_J LBXGLU,而不是 BIOPRO_J LBXSGL;CDC 指出,不应使用血清 LBXSGL 判断未确诊糖尿病;使用 LBXGLU 的分析需要空腹子样本权重(步骤 3)。非空腹者的 LBXGLU 为 NA;在 R 中, NA | TRUE为 TRUE,但NA | FALSE为 NA,因此只有非空腹且无糖尿病者的这个复合变量会缺失;在 WTMEC2YR 下删除这些 NA 会高估患病率。应仅在空腹分析域中使用空腹血糖复合指标并采用空腹权重,或者在 WTMEC2YR 下使用非空腹变体LBXGH>=6.5 | DIQ010=="Yes",并在variable_mapping.csv中说明采用哪种方式CVD MCQ160B/C/D/E MCQ160B=="Yes"(CHF)| MCQ160C=="Yes"(CHD)| MCQ160D=="Yes"(心绞痛)| MCQ160E=="Yes"(MI);标签为 "Yes" / "No" / "Don't know" HTN BPXOSY2+3, BPXODI2+3, BPQ020 mean(BPXOSY2, BPXOSY3)≥140 | mean(BPXODI2, BPXODI3)≥90 | BPQ020=="Yes"(BPXOSY3 是第 3 次测量值,不是平均值;第 2 次和第 3 次测量值的平均值与 KNHANES 一致) 教育程度 DMDEDUC2 5 个文本等级 -
在完整文件上设置调查设计,然后对设计对象使用
subset(),以限定分析域 (例如 RIDAGEYR >= 20):svydesign(id=~SDMVPSU, strata=~SDMVSTRA, weights=~WTMEC2YR, nest=TRUE)。 权重取决于文件:上面的单周期_J表使用 WTMEC2YR;WTMECPRP 仅适用于疫情前的P_文件(P_DEMO、P_BMX 等)。来自空腹子样本的变量(GLU_J LBXGLU、TRIGLY_J LBXTR/LBDLDL)应使用空腹权重:WTSAF2YR(_J)或 WTSAFPRP(P_);将空腹子样本变量与全样本变量组合的变量(如上面的糖尿病)仅在空腹分析域中定义,因此不能纳入 WTMEC2YR 模型。合并周期时遵循 NCHS 规则:将每个周期的权重除以合并的周期数(1999–2002 年使用专用的 4 年权重);合并 2015–2016 年与 2017–2020 年 3 月数据时,使用 2/5.2 × WTMEC2YR 和 3.2/5.2 × WTMECPRP。
CHNS(三国设计):准备中国数据前,请阅读 references/chns_coding.md。
阶段 3:并行分析
分别对每个国家进行:
- 表 1:按暴露因素列出的基线特征(加权计数 + 百分比)
- 主要分析:序贯逻辑回归模型
- 模型 1(未调整)
- 模型 2(年龄 + 性别)
- 模型 3(完全调整:+ 教育程度、收入、吸烟、饮酒、肥胖、CVD)
- 亚组分析:按性别、年龄组、教育程度、收入、饮酒、吸烟、CVD、肥胖分组。
通过在完整设计上拟合暴露因素 × 亚组交互项(在全样本上使用
svyglm)来检验亚组间的关联是否不同,而不是比较各亚组的 P 值。 - 剂量-反应(如适用):采用 3 个结点的 RCS
Phase 4:跨国比较表
生成并列比较表:
| 分析 | 韩国 wOR(95% CI) | 美国 wOR(95% CI) | wOR 比值(95% CI);P |
|---|---|---|---|
| 总体(完全调整) | ... | ... | ... |
| 男性 | ... | ... | ... |
| 女性 | ... | ... | ... |
比较两国时,应使用比值比之比,而不是依据方向是否一致:两个估计值方向相同也可能存在差异,方向相反也可能相容。设两个独立调查得到的对数比值比为 b₁、b₂,基于调查设计的标准误为 SE₁、SE₂,则比值为 exp(b₁ − b₂),其 95% CI 为 exp(b₁ − b₂ ± 1.96·√(SE₁² + SE₂²)),且 z = (b₁ − b₂)/√(SE₁² + SE₂²)(Altman & Bland,BMJ 2003;326:219)。
所有数字都必须来自实际执行的代码输出(analysis_korea.R、analysis_us.R)——不得虚构 p 值、效应量、置信区间或样本量。
Phase 5:输出文件
{working_dir}/
├── cross_national_report.md — Study summary + comparison tables
├── variable_mapping.csv — Variable mapping with match status
├── analysis_korea.R — KNHANES analysis (self-contained)
├── analysis_us.R — NHANES analysis (self-contained)
├── results/
│ ├── table1_korea.csv
│ ├── table1_us.csv
│ ├── main_results_comparison.csv
│ └── subgroup_comparison.csv
└── manuscript_draft/ — Optional: Methods + Results draft
├── methods_draft.md
└── results_draft.md
报告或草稿中的所有引文均须来自 /search-lit(已确认 DOI/PMID);其他引文一律标记为 [UNVERIFIED - NEEDS MANUAL CHECK],绝不得凭记忆生成参考文献。
关键规则
- 绝不合并不同国家的数据。每个国家均须使用各自的调查设计进行分析。
- 使用各国特定的 BMI 临界值:韩国 ≥25(亚洲标准),美国 ≥30(WHO 标准)。
- 使用各国特定的收入指标:KNHANES 四分位数,NHANES PIR → 统一为二元变量。
- 必须进行加权分析:KNHANES 和 NHANES 均为复杂抽样调查。CHNS 没有调查权重——应进行非加权分析(参见
references/chns_coding.md)。 - 记录所有变量统一处理决策:哪些内容一致,哪些需要重新编码,哪些存在差异。
- 采用相同的分析方法:两国使用完全相同的模型设定,以确保公平比较。