不做实验就可以发文章,为小伙伴们安利孟德尔随机化分析(MR)

今天小果为大家分享一下两样本孟德尔随机化分析流程,整个分析过程比较简单,该分析最重要的是暴露因素和结局变量GWAS数据的查找,一般都通过两种方式获得,公共数据库和发表的相关文章获取,接下来就为大家用示例数据做下演示,代码如下:

  1. 安装需要的R包

install.packages(“devtools”)

devtools::install_github(“MRCIEU/TwoSampleMR”)

Install.packages(“ggplot2”)

  1. 导入需要的R包

library(TwoSampleMR)

library(ggplot2)

  1. 分析过程

bmi_exp <- extract_instruments(

outcomes=ieu-a-835,

clump=TRUE, r2=0.01,

kb=5000,access_token = NULL

)

##获取结局变量数据

t2d_out <- extract_outcome_data(

snps=bmi_exp$SNP,

outcomes=ieu-a-26,

proxies = FALSE,

maf_threshold = 0.01,

access_token = NULL

)

#对数据进行预处理

mydata <- harmonise_data(

exposure_dat=bmi_exp,

outcome_dat=t2d_out,

action= 2

)

#MR分析

res <- mr(mydata)

write.table(res,file=”twosampleMR.txt”,sep=”\t”,quote=F)

Dingtalk_20230310172212

##敏感性分析

#异质性检验

het <- mr_heterogeneity(mydata)

het

write.table(het,file=”het.txt”,col.names=T,row.names=F,sep=”\t”,quote=F)

#mr(mydata,method_list=c(‘mr_ivw_mre’)) #使用随机效应模型

#多效性检验

pleio <- mr_pleiotropy_test(mydata)

pleio

write.table(pleio,file=”pleio.txt”,col.names=T,row.names=F,sep=”\t”,quote=F)

#逐个剔除检验

single <- mr_leaveoneout(mydata)

#pdf(file=”leaveoneout.pdf”)

mr_leaveoneout_plot(single)

ggsave(“leaveoneout.pdf”)

Dingtalk_20230310171516

##可视化分析

#绘制散点图

mr_scatter_plot(res,mydata)

ggsave(“scatter_plot.pdf”)

Dingtalk_20230310171653

#绘制森林图

res_single <- mr_singlesnp(mydata)

mr_forest_plot(res_single)

ggsave(“forest_plot.pdf”)

Dingtalk_20230310171946

#绘制漏斗图

mr_funnel_plot(res_single)

ggsave(“funnel_plot.pdf”)

Dingtalk_20230310172051

小果今天对两样本孟德尔随机化的分享就到这里,有需要的可以借鉴学习奥,不要忘记点赞关注呀,下期在见。