Skip to content

MR 流水线 · 新手快速上手(登录 RStudio 后照着做)

这份是"手把手点一遍"的入门版。想查配置字段细节看同目录的 《MR流水线-使用教程.md》(服务器上是 USAGE.md)。


第 0 步:登录

  1. 浏览器打开 https://rstudio.stlog.cn
  2. 账号 research 密码 〈密码·见Vaultwarden〉
  3. 进去后你看到的就是 RStudio。项目已经装好在你的主目录里:~/mr-pipeline~ 就是 /home/research)。

认识界面(只需记住 3 个地方)

区域位置干什么用
Console(控制台)左边,> 提示符敲 R 命令
Terminal(终端)和 Console 同一块,点上面 Terminal 标签敲 Linux 命令(我们运行流水线用这个)
Files(文件)右下角浏览/上传/打开文件

找不到 Terminal 标签?菜单 Tools → Terminal → New Terminal 就有了。


先看效果:打开已有的示例报告

项目里已经用假数据跑好了一份示例报告,先打开看看成品长啥样:

  1. 右下 Files 面板 → 点进 mr-pipelineresultsreport
  2. MR_report.html → 在弹出的小菜单选 View in Web Browser
  3. 新标签页就打开了报告:方法学、结果表、散点/森林/漏斗图、共定位、参考文献……

⚠️ 这是假数据的演示,数字没意义,只是让你知道最终产物长什么样。下面换成你的真实数据。


五步跑你自己的分析

第 1 步 把项目设为工作目录

点 Terminal 标签,敲(cd 就是"进入文件夹"):

bash
cd ~/mr-pipeline

第 2 步 上传你的数据

  1. 右下 Files → 进入 mr-pipelinedataexposure(暴露文件放这)
  2. 点 Files 面板上方的 Upload 按钮 → 选你电脑里的暴露文件(如 protein_info.csv)→ 上传
  3. 同样地,把结局文件(如 FinnGen 的 .gz)上传到 dataoutcome

大文件(几百 MB)上传慢是正常的,等进度条走完。

第 3 步 改配置 config.yaml(关键,只改这一个文件)

  1. Files 面板回到 mr-pipeline,点 config.yaml 打开(在左上编辑区)
  2. 找到 exposures:outcomes: 两段,把里面的 file:(文件名)、trait:(名称)、sample_size / ncase / ncontrol(样本量)、build:(基因组版本,一般 GRCh38)改成你的
  3. 列名对不上时,在该条目的 column_map: 里写映射(详见《使用教程》里的"列名速查表")
  4. 改完 Ctrl+S 保存

拿不准就先照着里面 IL6R / FinnGen 的示例格式改,字段含义《使用教程》第 4 节有逐个解释。

第 4 步 运行(一行命令)

回到 Terminal,敲:

bash
Rscript run_all.R

回车后它会自动跑:读数据 → 选工具变量 → MR → 敏感性 → 共定位 → 出报告。 屏幕会滚动打印进度(SNP flow完成 N 个暴露-结局对报告已生成)。第一次因为要加载 LD 面板,clumping 那步会停几秒,正常。

跑完看到 run_all 完成。 就成功了。

第 5 步 看你的报告和结果

  • 报告:Files → resultsreportMR_report.htmlView in Web Browser
  • 主结果表results/mr_all_pairs_primary.csv(点它选 View 或下载)
  • 每个暴露-结局对的明细results/pairs/<暴露>__<结局>/

想重新跑 / 换数据

  • 换了数据或改了 config 想重跑干净的:Terminal 里先删旧结果再跑
    bash
    rm -rf results && Rscript run_all.R
  • 只补跑没算过的部分(断点续跑):config.yamlresume: true 时,直接 Rscript run_all.R 会复用已算好的,不重头来。

常见问题

现象怎么办
require_rsid ... 但仅 X% 是 rsID你的 SNP 列不是 rsID,去 column_mapSNP: 指到 rsID 那列
build 不一致暴露和结局的 build: 要一致(都填 GRCh38 最省事)
列自动探测失败,缺 XXX在该数据集的 column_map: 里显式写 XXX: 你文件里的真实列名
p 值全变成 1 或极端该数据 p 值是 -log10(如 FinnGen mlogp、UKB log10p),把 pval_encoding: 改成 neglog10
效应量是 OR 不是 betaeffect_type: 改成 OR(会自动取 log)
Terminal 里 Rscript 说命令找不到先确认你在项目目录:cd ~/mr-pipeline
报告里图没显示重跑一次 rm -rf results && Rscript run_all.R,图会重新生成并内嵌

记不住时

  • 配置字段含义、列名映射、cis/genome_wide 区别 → 看《MR流水线-使用教程.md》(服务器 ~/mr-pipeline/USAGE.md
  • 只要记住一句话:把数据放 data/,改 config.yaml,Terminal 里 Rscript run_all.R,去 results/report/MR_report.html 看报告。

个人科研与运维文档 · 内容持续修订