前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言中的共定位分析

R语言中的共定位分析

作者头像
一粒沙
发布2022-04-18 14:30:19
2.2K0
发布2022-04-18 14:30:19
举报
文章被收录于专栏:R语言交流中心R语言交流中心
共定位分系是寻找GWAS和*QTL的多效性SNP的分析方法。另外跟在孟德尔随机分析之后,在MR后面做的共定位分析,其实最好的结果是两个表型并不在遗传学上共享因果变异,这样才能更有利的证明两个表型之间的因果关系。在这个方法中有四个假设:
代码语言:javascript
复制
H0: 表型1(GWAS)和 表型2 (以eQTL为例)与某个基因组区域的所有SNP位点无显著相关。
H1/H2:表型1(GWAS)或表型2(以eQTL为例)与某个基因组区域的SNP位点显著相关。
H3:表型1(GWAS)和 表型2 (以eQTL为例)与某个基因组区域的SNP位点显著相关,但由不同的因果变异位点驱动。
H4:表型1(GWAS)和 表型2 (以eQTL为例)与某个基因组区域的SNP位点显著相关,且由同一个因果变异位点驱动。

基于上面的假设,第四种设想 H4 在统计学上概率越高,越能解释显著信号位点如何影响表型。,H4值的范围在0-1之间,0表示概率为0%,1表示概率为100%。后验概率越高越好。很多文献认为PPA > 0.95的位点是共定位位点,也有一些文献会放松要求到0.75。接下来我们看下在R中如何进行实现这个分析方法。首先是包的安装:

代码语言:javascript
复制
install.packages("coloc")

1. 数据的准备

代码语言:javascript
复制
###test data
data(coloc_test_data)
attach(coloc_test_data)
plot_dataset(D1)

接下来我们看下输入数据的结构:

1) SNP的基础信息,包括SNP的ID(不一定是rsID)和SNP位置

2)关联分析的效应信息,包括beta值和效应方差方差varbeta,如果没有这一项,就需要有P、MAF和N

3) sdY,Y的标准差。或者 MAF,次等位基因频率;N,样本量。

4) type,分析的类型,有quant和cc两种,分别代表数量性状关联和Case/Control分析

5) p :未校正的 p 值;fdr :校正后的 p 值

6) beta :效应值,也就是线性回归的斜率

7) t-statistic :T检验的统计量

8) varbeta 效应值方差。计算公式如下:

既然数据结构确定那么不同的表型类型所需要的必须数据情况如下:

cc表型:

rs编号rs_id、P值、效应值beta、效应值方差varbeta;

quant表型:

1)rs编号rs_id、P值、表型的标准差sdY;

2)rs编号rs_id、P值、次等位基因频率 MAF;

最后就是数据的载入,在这里需要注意的是coloc接受的数据格式是列表,而且type和sdY需要在转换成列表后再指定,并且type只需要指定一个值。接下来看下我们实例中的数据结构:

2. 共定位分析

代码语言:javascript
复制
####abf 算法
my.res <- coloc.abf(dataset1=D1, dataset2=D2)

数据结果中包含两个子结果,一个是summary,主要描述了SNPs数量,以及H0(无因果变量)、H1(仅为性状1的因果变量)、H2(仅为性状2的因果变量)、H3(两个不同的因果变量)和H4(一个共同的因果变量)的后验概率。

另一个结果是result,主要描述的是每一个SNP位点的贝叶斯算子以及中间计算过程

上面结果中SNP.PP.H4表示的是GWAS显著信号和eQTL位点为同一个位点的后验概率,范围在0-1之间,0表示概率为0%,1表示概率为100%。后验概率越高越好。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-03-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 R语言交流中心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档