zoukankan      html  css  js  c++  java
  • 使用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 上的选项参数说明并不详细,不过代码中的注释写得比较明确:

  • 相关阅读:
    Luogu P5853 [USACO19DEC]Tree Depth P
    Luogu P6009 [USACO20JAN]Non-Decreasing Subsequences P
    HDU6309 Absolute
    Luogu P4734 [BalticOI 2015]Hacker
    Gym102431F Ferry
    Gym102431G Game on the Tree
    AGC018F Two Trees
    Gym102268D Dates
    AGC023F 01 on Tree
    CF700E Cool Slogans
  • 原文地址:https://www.cnblogs.com/shiyanhe/p/13080826.html
Copyright © 2011-2022 走看看