医工科研·kim
发布于 2023-11-30 / 3988 阅读 / 0 评论 / 0 点赞

02.FastGWASR的使用

FastGWASR接口使用说明

一、如何获取自己的积分

除了可以直接在网站上查自己的积分(网站会有点延迟)外,可以直接使用代码包进行获取

library(FastAuthR)
library(FastGWASR)
get_score() #获取自己的积分

二、FastGWASR的使用

注意:使用对应的R包内的方法,需要先library对应的R包
注意:MendelR高级包,已经内置FastGWASR的功能,直接按照教程切换数据获取模式,填入云上GWAS数据库对应表型的编号id,即可提取对应的数据
注意:云上GWAS不提供原始的数据下载,只能通过接口按需获取

MendelR点击链接查看
MendelR如何使用云上GWAS | 阈上医学 (medicineitlab.com)


分割线


下面是用FastGWASR包提取数据,利用TwoSampleMR和TwoSampleMR分析的教程,有代码编程能力,可以自己编写

以下1-5点展示了一次完整的提取数据,到MR分析的过程
更多复杂的需求,可以利用接口,自己实现

1.提取显著的工具变量(暴露数据)

library(FastAuthR)
library(FastGWASR)
exposure_data <- extract_tophist_iv("finngen_R9_E4_VIT_D_DEF", pval = 5e-6,
                                      r2=0.001, kb=10000, clump = T)

2.提取关联性数据(结局数据)

outcome_data <- extract_associated_iv("ebi-a-GCST90001404", exposure_data$SNP)

3.进行数据协同处理

har_data <- harmonise_data(exposure_data, outcome_data)

4.进行mr分析

  • 利用TwoSampleMR内置方法
mr_res <- TwoSampleMR::mr(har_data)
mr_res #打印输出结果
  • 利用MendelianRandomization内置方法
#先格式化到MendelianRandomization可用格式
mr_input <- format_to_MendelianRandomization(har_data)
mr_input_res <- MendelianRandomization::mr_allmethods(mr_input)
mr_input_res #打印输出结果

5.汇总代码

library(FastAuthR)
library(FastGWASR)

exposure_data <- extract_tophist_iv("finngen_R9_E4_VIT_D_DEF", pval = 5e-6,
                                      r2=0.001, kb=10000, clump = T)

outcome_data <- extract_associated_iv("ebi-a-GCST90001404", exposure_data$SNP)

har_data <- harmonise_data(exposure_data, outcome_data)

mr_res <- TwoSampleMR::mr(har_data)
mr_res

mr_input <- format_to_MendelianRandomization(har_data)
mr_input_res <- MendelianRandomization::mr_allmethods(mr_input)
mr_input_res

6.获取对应id的详细信息

library(FastGWASR)
extract_gwasinfo("finngen_R9_E4_VIT_D_DEF")

注意:里面不填任何参数,可以获取整个云上GWAS数据库包含的数据详情

library(FastGWASR)
a = extract_gwasinfo()

如果需要导出到本地文件查看

data.table::fwrite(a, "云上GAWS数据库详情.csv")

7.提取多个暴露id和多个结局id

可以同时提取多个id的数据,加速分析速度

library(FastGWASR)
exposure_data <- extract_tophist_iv(c("finngen_R9_E4_VIT_D_DEF","ebi-IPs91-GCST90274758"), pval = 5e-6,
                                      r2=0.001, kb=10000, clump = T)
outcome_data <- extract_associated_iv(c("结局id1", "结局id2", "结局id3"), exposure_data$SNP)

8.提取某个数据范围内的数据

注意 提取的范围数据,有两大作用:1.药物靶点cis数据 2.共定位区间数据
可以根据自己需求,构造对应的格式传入参数即可

以下示例代码
可以提取靶点A1BG对应范围的数据
染色体19号,BP 58345183-58353492

library(FastGWASR)
extract_associated_iv("ukb-ppp-A1BG-OID30771", "19:58345183-58353492")

三、数据对应积分查询

在网站上可以直接查询到提取该数据所需要的积分
阈上医学·云上GWAS (medicineitlab.com)
注意:提取成功且有数据,才会消耗对应的积分,否则不会影响您的积分
您在运行前可以使用代码包去直接获取,请求对应的数据需要多少积分

library(FastAuthR)
cal_score(id_exposures = "finngen_R9_E4_VIT_D_DEF", id_outcomes = "ebi-a-GCST90001404")

问题汇总:
FastGWASR问题汇总 | 阈上医学 (medicineitlab.com)


评论