使用PopLDdecay软件绘制LD衰减图

2024-03-30 10:28

本文主要是介绍使用PopLDdecay软件绘制LD衰减图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前记

PopLDdecay是一款用于进行种群遗传学和关联分析的软件。它可以在全基因组水平上进行基因型数据的相关性和衰减分析,帮助研究人员探索种群间的遗传差异和突变选择的模式。

使用PopLDdecay可以实现以下功能:

  1. 遗传距离的计算:可以计算遗传距离,包括最小二乘法估计和Cockerham和Weir的方法。
  2. 关联分析:可以计算遗传连锁块、相关关系、平衡和不平衡的情况。
  3. 衰减分析:可以计算将遗传相关性与遗传距离之间的关系进行衰减分析。

PopLDdecay支持多种数据格式的输入,包括VCF、HapMap、PLINK和BEAGLE等格式。它还提供了直观的可视化功能,可以生成遗传距离和衰减图,帮助用户更好地理解和解释结果。

此外,PopLDdecay还具有高效的计算能力和并行处理功能,可以加快分析速度,提高效率。

总之,PopLDdecay是一款功能强大且易于使用的软件,适用于基因型数据的遗传相关性和衰减分析,在种群遗传学和关联研究中具有重要的应用价值。

一、软件的安装与配置

 PopLDdecay官网地址如下:GitHub - BGI-shenzhen/PopLDdecay: PopLDdecay: a fast and effective tool for linkage disequilibrium decay analysis based on variant call format(VCF) filesicon-default.png?t=N7T8https://github.com/BGI-shenzhen/PopLDdecay

 软件的安装和配置代码如下:

#安装
git clone https://github.com/BGI-shenzhen/PopLDdecay.git
cd PopLDdecay
chmod 755 configure
./configure
make
mv PopLDdecay ./bin/#环境变量配置
vim ~/.bashrc
export PATH="/public/home/gguo/biosoft/PopLDdecay/bin:$PATH"
source ~/.bashrc

二、LD衰减距离的计算

使用VCF文件进行LD计算,代码如下:

#计算LD
cd /public/home/
PopLDdecay -InVCF sample.vcf -OutStat LDdecay#绘制LD衰减图
perl Plot_OnePop.pl -inFile LDdecay.stat.gz -output Fig

 第一行代码运行后会产生LDdecay.stat.gz文件,即为LD计算结果。

使用第二行代码进行衰减图的绘制,会产生PDF和PNG两种格式文件。

三、R可视化LD衰减图

 主要使用ggplot2包,代码如下:

######### 绘制LD衰减距离图 ###########
rm(list = ls())  # 清除工作环境中的变量
setwd("D:/Working-Folder/GWAS data/") 
library(ggplot2)ld_data <- read.table("LDdecay.txt", header = TRUE, sep = "\t")
Distance <- ld_data$Distance..Kb.
r2 <- ld_data$r.2# 检查数据
head(distance)
head(average_r2)# 创建LD衰减图
ld_plot <- ggplot(data = ld_data, aes(x = Distance, y = r2, color = Distance)) +geom_line(size = 0.5) +  # 增加线条粗细scale_color_gradient(low = "blue", high = "red") +  # 渐变色theme_minimal() +theme(legend.position = "right",  # 将图例放在图的右侧plot.title = element_text(face = "bold", size = 14, hjust = 0.5),axis.title.x = element_text(size = 12),axis.title.y = element_text(size = 12),axis.text.x = element_text(size = 10),axis.text.y = element_text(size = 10),plot.margin = margin(5.5, 14, 5.5, 14))# 增加图形边距ld_plot <- ld_plot +geom_point(size = 1.5, shape = 19, stroke = 0.5, fill = "white")  # 改变点的形状、大小和颜色ld_plot <- ld_plot +scale_x_continuous(breaks = seq(0, max(distance), by = 50), labels = seq(0, max(distance), by = 50))  # 调整x轴刻度# 显示图形
print(ld_plot)#保存
ggsave("LD_decay_plot.png", ld_plot, width = 12, height = 6, dpi = 300)

参考文献

Zhang C, Dong SS, Xu JY, He WM, Yang TL. PopLDdecay: a fast and effective tool for linkage disequilibrium decay analysis based on variant call format files. Bioinformatics. 2019 May 15;35(10):1786-1788. doi: 10.1093/bioinformatics/bty875. PMID: 30321304.

后记

 以上是PopLDdecay的简单使用方法,简单记录一下。

2024.3.29

----CXGG

千里之行,始于足下。 

这篇关于使用PopLDdecay软件绘制LD衰减图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/861235

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Redis 基本数据类型和使用详解

《Redis基本数据类型和使用详解》String是Redis最基本的数据类型,一个键对应一个值,它的功能十分强大,可以存储字符串、整数、浮点数等多种数据格式,本文给大家介绍Redis基本数据类型和... 目录一、Redis 入门介绍二、Redis 的五大基本数据类型2.1 String 类型2.2 Hash

Redis中Hash从使用过程到原理说明

《Redis中Hash从使用过程到原理说明》RedisHash结构用于存储字段-值对,适合对象数据,支持HSET、HGET等命令,采用ziplist或hashtable编码,通过渐进式rehash优化... 目录一、开篇:Hash就像超市的货架二、Hash的基本使用1. 常用命令示例2. Java操作示例三

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他