专栏首页实验盒使用Python版XP-CLR检测基因组中的选择信号

使用Python版XP-CLR检测基因组中的选择信号

上一篇文章 《使用XP-CLR检测基因组中的选择信号》 介绍了 XP-CLR。XP-CLR 是一种是基于选择扫荡(selective sweeep)的似然方法。选择扫荡可以增加群体之间的遗传分化,导致等位基因频率偏离中性条件下的预期值。XP-CLR 利用了两个群体之间的多基因座等位基因频率差异(multilocus allele frequency differentiation)建立模型,使用布朗运动来模拟中性下的遗传漂移,并使用确定性模型来近似地对附近的单核苷酸多态性(SNPs)进行选择性扫描。

原版 XP-CLR 软件已经多年没更新,当中存在一些 bugs。实测在计算几千个样本的时候,原版软件会报 Segmentation Fault 的错误。牛津大学 的 Nick Hardin 使用 Python 重写了 XP-CLR的计算工具,并且改正了当中存在的 bug。如果需要使用 XP-CLR 对大量样本分析,推荐使用这个重构的 Python版。

Python版的仓库地址为 https://github.com/hardingnj/xpclr。

安装

可以克隆 GitHub 仓库再安装:

git clone https://github.com/hardingnj/xpclr.git
cd xpclr
python setup.py install

也可以使用 bioconda 安装:

conda install xpclr -c bioconda

两种安装方式,推荐使用 bioconda 安装,不容易出错。

使用

这个工具支持 hdf5,vcf 和 原版 XP-CLR 格式的文件。

使用也很简单,这里以原版 XP-CLR 文件(mapfile、popAfile、popBfile三个文件)为例,以 50kb unoverlapping window 去对 phased 数据进行计算:

xpclr --format txt --map mapfile --popA popAfile --popB popBfile --chr 1 --phased --maxsnps 600 --size 50000 --step 50000  --out output

GitHub 上的选项参数说明并不详细,不过代码中的注释写得比较明确:

如果有问题,可以在 www.zhaozhuji.net 网站留言或关注公众号获取联系方式咨询。

本文分享自微信公众号 - 实验盒(gh_8a85afc0b064),作者:实验盒

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-06-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 使用XP-CLR检测基因组中的选择信号

    检测基因组选择信号的方法有很多种,其中 XP-CLR 方法是常用的一种。XP-CLR 是陈华老师、Nick Patterson 和 David Reich 在 ...

    实验盒
  • 使用Hapbin基于EHH、iHS、XP-EHH方法检测基因组中的选择信号

    EHH(Extended Haplotype Homozygosity)、iHS(Integrated Haplotype Score) 和 XP-EHH(Cr...

    实验盒
  • 部署Microsoft .NET Framework 3.0[翻译]

    une2006 适用 于 Microsoft .NET Framework 3.0版(以前叫做WinFX) Microsoft .NET Framework...

    张善友
  • 你的C#代码是怎么跑起来的(一)

    写了那么多C#代码,大家有没有想过自己写的代码编译后的可执行文件内部是什么样子,是怎样在系统上运行的? 编译成exe,然后双击exe文件运行,这中间到底发生了些...

    用户1147588
  • .NET6 平台系列2 .NET Framework框架详解

      .NET Framework 是 Windows 的托管执行环境,可为其运行的应用提供各种服务。 它包括两个主要组件:公共语言运行时 (CLR),它是处理运...

    张传宁IT讲堂
  • JavaScript中的浏览器检测和DOM基础

    由于每个浏览器都具有自己独到的扩展,所以在开发阶段来判断浏览器是一个非常重要的步骤。虽然浏览器开发商在公共接口方面投入了很多精力,努力的去支持最常用的公共功能;...

    魏晓蕾
  • .NET6 平台系列3 .NET CLR 详解

      运行时(Runtime Environment,简称Runtime ),是指那些支持在特定的平台上,用于运行特定编程语言编写的软件的库和程序集,它一般要处理...

    张传宁IT讲堂
  • ​monosys as 1ddlang语言选型+1ddcodebase实践选型绿色monodevelope集成常见多语言

    本文关键字:.net上 都有什么语言,最后一个支持xp的mono,绿色版monodevelop,绿色xamrin studio,mingwsys vs mono...

    minlearn
  • 《深入理解计算机系统》(CSAPP)读书笔记 —— 第五章 优化程序性能

      2.编写出编译器能够有效优化以转换成高效可执行代码的源代码(例如,在C语言中,指针运算和强制类型转换使得编译器很难对它进行优化)。

    嵌入式与Linux那些事
  • .NET面试题系列[1] - .NET框架基础知识(1)

    面试出现频率:从来没人问过。事实上我都不知道怎么问,考背书吗?倒是可以问问知不知道现在.NET最新版本是什么,考察面试者是否对新技术足够敏感。

    s055523
  • MSSQL横向移动

    使用发现的凭证在环境中横向移动、在时间受限的操作过程中,快速可靠地使用一组新获得的凭据的能力至关重要。这篇博客文章介绍了如何通过MSSQL CLR自动执行横向...

    Khan安全团队
  • 冰蝎3.0绕过HIDS原理分析|美创安全实验室

    最流行的WebShell客户端—冰蝎,于近日发布了最新版3.0。最新版一经发出便火速在安全圈广泛传播,究其原因是因为新版冰蝎较之前版本进行了大量修改,一举绕过了...

    数据安全
  • 《CLR via C#》Part1之Chapter3 共享程序集和强命名程序集(二)

    CLR支持两种程序集:弱命名程序集(weakly named assembly)和强命名程序集(strongly named assembly).

    Isaac Zhang
  • CLR和.Net对象生存周期

    标签:GC .Net C# CLR 前言 对象的生存周期和垃圾回收一直是容易被我们忽略的知识点,因为我们现在高级语言编程平台太“智能”了,自动的异常处理,内存管...

    潘成涛
  • CLR和.Net对象生存周期

    潘成涛
  • Python 简单应对反爬虫

    现在我们介绍的是不花钱的免费代理IP池。原理很简单,大家去百度或者谷歌搜索免费代理IP总能搜到几个可用的免费代理IP,有些是付费代理IP网站免费放出一两个来给大...

    arcticfox
  • Windows常用命令一览表

    描述:CMD是command的缩写.即命令行 虽然随着计算机产业的发展,Windows 操作系统的应用越来越广泛,DOS 面临着被淘汰的命运,但是因为它运行安全...

    WeiyiGeek
  • 是开始学习IronPython 的时候了

    Dino's Blog 上写一篇文章介绍了IronPython 2.6的Final版本已经发布。IronPython就是优雅的python编程语言和强大的.NE...

    张善友
  • 用Spring Boot Admin来监控我们的微服务

    【转载请注明出处】:https://blog.csdn.net/huahao1989/article/details/108039738

    后端老鸟

扫码关注云+社区

领取腾讯云代金券