LD SCore计算基因多效性、遗传度、遗传相关性(the LD Score regression intercept, heritability and genetic correlation)
这篇文章是对之前啊啊救救我,为何我的QQ图那么飘(全基因组关联分析)这篇文章的一个补坑。
LD SCore除了查看显著SNP位点对表型是否为基因多效性外,还额外补充了怎么计算表型的遗传度和遗传相关性。
1 下载、安装ldsc
git clone https://github.com/bulik/ldsc.git
cd ldsc
2 安装ldsc依赖的环境
conda env create --file environment.yml
source activate ldsc
3 测试是否安装成功
如果安装成功,输入./ldsc.py -h代码会出现如下图:

输入./munge_sumstats.py -h代码会出现如下图:

4 准备summary文件summary.txt
summary.txt为关联分析的summary数据,包含rs编号、染色体编号、位置、A1(效应等位基因)、A2(无效等位基因)、效应值(OR或BETA)、P值,如下图所示:

5 将summary文件转换为ldsc格式
munge_sumstats.py --sumstats summary.txt --N 17115 --out scz --merge-alleles w_hm3.snplist
这里的N指的是研究的样本数量;
scz是输出的文件名;
w_hm3.snplist是被纳入分析的SNP,包含三列:包含rs编号、位置、A1(效应等位基因)、A2(无效等位基因)# 这一步可有可无#
如果想把所有的SNP位点纳入分析,那么采用这个命令:
munge_sumstats.py --sumstats summary.txt --N 17115 --out scz
这一步会生成scz.sumstats.gz的文件;
6 将基因型数据按染色体分开
for q in $(seq 1 22); do plink --bfile file --chr $q --make-bed --out chr$q done
这个步骤会生成22个plink格式文件(bed,bim,fam),每一个文件代表一条染色体。

7 计算LD
for q in $(seq 1 22); do ldsc.py --bfile chr$q --l2 --ld-wind-cm 5 --yes-really --out chr/$q done
生成的文件如下所示:

8 计算回归截距和遗传度(the LD Score regression intercept and heritability)
ldsc.py --h2 scz.sumstats.gz --ref-ld-chr chr/ --w-ld-chr chr/ --out scz_h2
scz.sumstats.gz为步骤5生成的文件
chr/ 为步骤7生成的LD文件路径
scz_h2为回归截距和遗传度的输出文件
9 查看回归截距(LD Score regression intercept )
less scz_h2.log
输出文件最底部:
Intercept: 1.0252 (0.0075)
截距为1.0252
关于回归截距怎么看,请看之前发过的推文:啊啊救救我,为何我的QQ图那么飘(全基因组关联分析)
10 查看遗传度(heritability)
less scz_h2.log
输出文件最底部:
Total Observed scale h2: 0.7153 (0.0386)
遗传度为0.7153
11 计算遗传相关性(genetic correlation)
ldsc.py --rg trait1.sumstats.gz,trait2.sumstats.gz --ref-ld-chr chr/ --w-ld-chr chr/ --out trait1_trait2
trait1.sumstats.gz为表型1的ldsc格式文件;
trait2.sumstats.gz为表型2的ldsc格式文件;
chr/ 为步骤7生成的LD文件路径
trait1_trait2为表型1和表型2的遗传相关性输出文件;
12 查看遗传相关性(genetic correlation)
less trait1_trait2.log
输出文件最底部:
Genetic Correlation: 0.6561 (0.0605)
表型1和表型2的遗传相关性为0.6561
LD SCore计算基因多效性、遗传度、遗传相关性(the LD Score regression intercept, heritability and genetic correlation)的更多相关文章
- 利用GCTA工具计算复杂性状/特征(Complex Trait)的遗传相关性(genetic correlation)
如文章"Genome-wide Complex Trait Analysis(GCTA)-全基因组复杂性状分析"中介绍的GCTA,是一款基于全基因组关联分析发展的分析工具,除了计算 ...
- usr/bin/ld: cannot find 错误解决方法和 /etc/ld.so.conf
我makefile出现这个错误: HelloWorldServer.c:(.text+0xaa): undefined reference to `zmq_send'collect2: error: ...
- GAN量化评估方法——IS(Inception Score)和FID(Frechet Inception Distance score)
生成模型产生的是高维的复杂结构数据,它们不同于判别模型,很难用简单的指标来评估模型的好坏.下面介绍两种当前比较流行的评估生成模型的指标(仅判别图像):IS(Inception Score)和FID(F ...
- /usr/bin/ld.bfd.real: cannot find -lGL /usr/bin/ld.bfd.real: cannot find -lX11
/usr/bin/ld.bfd.real: cannot find -lGL /usr/bin/ld.bfd.real: cannot find -lX11 根据网上大多数的说法,以及官网的介绍.截至 ...
- linux ERROR: ld.so: object '/lib/libcwait.so' from /etc/ld.so.preload cannot be preloaded: ignored.
[root@ora9i 3238244]# lsb_release -a LSB Version: :core-3.0-amd64:core-3.0-ia32:core-3.0-noarch:g ...
- Centos中Qt编译问题(/usr/bin/ld: 找不到 -lpulse-mainloop-glib,/usr/bin/ld: 找不到 -lpulse...)
Linux下QT编写一个与视频播放的程序,出现/usr/bin/ld: 找不到 -lpulse-mainloop-glib,/usr/bin/ld: 找不到 -lpulse 解决办法: 首先find ...
- Elasticsearch 评分score计算中的Boost 和 queryNorm
本来没有这篇文章,在公司分享ES的时候遇到一个问题,使用boost的时候,怎么从评分score中知道boost的影响. 虽然我们从查询结果可以直观看到,boost起了应有的作用,但是在explain的 ...
- 全基因组关联分析学习资料(GWAS tutorial)
前言 很多人问我有没有关于全基因组关联分析(GWAS)原理的书籍或者文章推荐. 其实我个人觉得,做这个分析,先从跑流程开始,再去看原理. 为什么这么说呢,因为对于初学者来说,跑流程就像一个大黑洞,学习 ...
- GWAS分析基本流程及分析思路
数据预处理(DNA genotyping.Quality control.Imputation) QC的工作可以做PLINK上完成Imputation的工作用IMPUTE2完成 2. 表型数据统计分析 ...
随机推荐
- Pthon魔术方法(Magic Methods)-可调用对象
Pthon魔术方法(Magic Methods)-可调用对象 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.可调用对象方法 __call__: 类中定义一个该方法,实例就可以像 ...
- 【Java并发编程之深入理解】Synchronized的使用
原文:https://blog.csdn.net/zjy15203167987/article/details/82531772 1.为什么要使用synchronized 在并发编程中存在线程安全问题 ...
- SignalR入门二、使用 SignalR 2 实现服务器广播
一.概述 这篇教程通过实现一个股票报价的小程序来讲解如何使用SignalR进行服务器端的推送,服务器会模拟股票价格的波动,并把最新的股票价格推送给所有连接的客户端,最终的运行效果如下图所示. 教程:使 ...
- Convert.ToString(null) => null
{ string str0 = Convert.ToString(null); Console.WriteLine("0,{0}", str0); if (str0==" ...
- Djiango-富文本编辑器
借助富文本编辑器,网站的编辑人员能够像使用offfice一样编写出漂亮的.所见即所得的页面.此处以tinymce为例,其它富文本编辑器的使用也是类似的. 在虚拟环境中安装包. pip install ...
- 13-Flutter移动电商实战-ADBanner组件的编写
1.AdBanner组件的编写 我们还是把这部分单独出来,需要说明的是,这个Class你也是可以完全独立成一个dart文件的.代码如下: 广告图片class AdBanner extends Stat ...
- LeetCode 1093. Statistics from a Large Sample
原题链接在这里:https://leetcode.com/problems/statistics-from-a-large-sample/ 题目: We sampled integers betwee ...
- WinDbg常用命令系列---源代码操作相关命令
lsf, lsf- (Load or Unload Source File) lsf和lsf-命令加载或卸载源文件. lsf Filename lsf- Filename 参数: Filename指定 ...
- nuxt如何处理用户登录状态持久化:nuxtServerInit 页面渲染前的store处理
vue-cli项目中,我们可以用vuex-persistedstate,它可以使vuex的状态持久化,页面刷新都不会丢失,原理当然是localStorage啦!当然也可以使用vue-cookies进行 ...
- 原创:自定义spark GraphX中的collectNeighborIds方法
/** * 自定义收集VertexId的neighborIds * @author TongXueQiang */def collectNeighborIds[T,U](edgeDirection:E ...