• 使用VEGAS2(Versatile Gene-based Association Study)进行gene based的关联分析研究


    gene-based关联分析研究是SNP-based关联分析研究的一个补充。

    目前有很多工具支持gene-based关联分析研究,比如GCTA,VEGAS2等。

    下面主要介绍一下怎么用VEGAS2做gene-based的关联分析研究。

    先说VEGAS2的优点,输入特别简单,不需要准备太多输入文件。

    缺点,我后面再提。

    VEGAS2提供了两种方式跑gene based的关联分析。

    一种是在线的,一种是离线的。

    下面分别介绍这两种。

    1、基于在线跑VEGAS2的方式

    在线网址https://vegas2.qimrberghofer.edu.au/

    这种输入方式很简单,准备一个文件,文件包含两列,分别为SNP的rs编号和P值,如下所示:

    rs1004739 0.00341

    rs2898687 0.005083

    rs7162781 0.6343

    rs2905794 0.9469

    rs1801052 0.9469

    rs1013948 0.2093

    准备好后,按如下图所示提交分析

    M1cJoT.md.png

    2、基于Linux跑VEGAS2的方式

    这种方式优点是不需要像在线那种方式需要等对方返回结果。直接就能在服务器上跑。

    缺点也很明显。

    第一、

    配置麻烦。安装很不友好。不适合生信小白拿来练手。

    会让你越练越挫,越练越生气。最后从入门到放弃。

    第二、

    即便你安装成功了,能跑了。你会发现,特别占CPU。

    我相信等你跑完所有染色体后,早被课题组的人骂惨了。

    所以,真心建议,放弃这个软件,或者直接选用在线版本。

    如果你坚持要在Linux下用这个软件,请看下面的教程。

    2.1 VEGAS2下载、安装

    wget https://vegas2.qimrberghofer.edu.au/VEGAS2offline.tgz

    tar -zxvf zVEGAS2offline.tgz

    解压后,会看到以下两个可执行文件:

    1. VEGAS2.pl
    1. VEGAS2.config

    以及两个文件夹:

    a. VEGAS2database

    b. VEGAS2scripts

    2.2 config VEGAS2

    sh vegas2.config VEGAS2database VEGAS2scripts

    2.3 确保服务器安装了perl,plink和R

    which perl

    which plink

    which R

    如果安装了perl,plink和R,在输入上面命令后,会返回perl,plink和R的地址。没有返回哪个软件的地址,则需要自己手动export进去。

    例如,假如没有返回plink软件,但是你又明确知道plink安装在/usr/bin下,则用以下命令:

    export PATH=/usr/bin/:$PATH

    2.3 安装R的依赖包

    install.packages("mvtnorm")

    install.packages("corpcor")

    2.4 开始跑gene-based关联分析研究。

    默认参数:

    vegas2 test_vegas2input.txt -pop 1000GEURO -subpop EURO -genesize 0kbloc -top 100 -sex BothMnF -max 1000000 -out genebased.V2out

    注意:

    –chr 和 –genelist参数不要同时使用,同样,–top 和 –bestsnp参数也不要同时使用。不然没法工作。
    -pop是指研究样本的群体来源,默认是欧洲( 1000GEURO );

    -subpop是指子群体,比如芬兰,北方汉族等;

    -genesize To specify which gene definition to use. There are five options available viz. 0kbloc(default), 10kbloc, 20kbloc, 50kbloc and 0kbldbin

    -chr To run vegas2 on specific chromosome. It could be in between 1 to 23.

    -genelist To run vegas2 on specific list of genes.

    -top It tell vegas2 to perform top percentage test where it consider specified percentage of top SNPs

    -bestsnp It tell vegas2 to perform best SNP test.

    -sex This option is provided for X-chromosome analysis. It tells vegas2 to consider either male (Default) of female 1000G individuals to make ld matrix for simulations.

    -max It tells VEGAS2 the maximum number of simulation to perform. It must be above 1e6.

    -adjust To get genomic inflation corrected p-values. It will create one more file “.corrected”

    -out It tells VEGAS2 the output file name.

    如果幸运的话,在这个阶段就能跑成功了。

    这个时候,能得到如下示例结果:

    M155on.md.png

    但如果不幸。报错了。

    下面我再推荐一个备份的跑法。

    2.5 备份跑法:gene-based关联分析研究。

    跑之前,需要先修改vegas2.pl的代码。

    修改vegas2.pl

    vi vegas2.pl

    进入vegas2.pl文件以后,改动的代码如下:

    1)第209行

    将原始代码:

    my $path_sub_population = "/scratch/aniketM/VEGAS2/$reference_population/1000G$sub_population.extract";

    修改为:

    my $path_sub_population = "/VEGAS2/VEGAS2offline2/VEGAS2database/$reference_population/1000G$sub_population.extract";

    其中,/VEGAS2/VEGAS2offline2/VEGAS2database/指的是你服务器VEGAS2database绝对路径

    也就是说,如果你的VEGAS2database文件夹放在/usr/VEGAS2/VEGAS2offline2/VEGAS2database/这个路径上,

    那么这里应该修改为:

    my $path_sub_population = "/usr/VEGAS2/VEGAS2offline2/VEGAS2database/$reference_population/1000G$sub_population.extract";

    2)第212行

    将原始代码:

    my $path_merge_database = "/scratch/aniketM/VEGAS2/$reference_population/$definition_gene";

    修改为:

    my $path_merge_database = "/VEGAS2/VEGAS2offline2/VEGAS2database/$reference_population/$definition_gene";

    修改的路径同209行的修改方式,这里不多做解释。

    3)第215行

    修改方式同209行,

    /scratch/aniketM/VEGAS2/

    改为

    /VEGAS2/VEGAS2offline2/VEGAS2database/

    4)第218行

    修改方式同209行,

    /scratch/aniketM/VEGAS2/

    改为

    /VEGAS2/VEGAS2offline2/VEGAS2database/

    5)第340行

    将原始代码:

    system("cp /home/aniketM/bin/VEGAS2scripts/genemerge.sh genemerge.sh");

    修改为:

    system("cp /VEGAS2/VEGAS2offline2/VEGAS2scripts/genemerge.sh genemerge.sh");

    其中,/VEGAS2/VEGAS2offline2/VEGAS2scripts/指的是你服务器VEGAS2scripts绝对路径

    也就是说,如果你的VEGAS2scripts文件夹放在/usr/VEGAS2/VEGAS2offline2/VEGAS2scripts/这个路径上,

    那么这里应该修改为:

    system("cp /usr/VEGAS2/VEGAS2offline2/VEGAS2scripts/genemerge.sh genemerge.sh");

    6)第341-346行

    修改方式同340行,

    /home/aniketM/bin/VEGAS2scripts/

    改为

    /VEGAS2/VEGAS2offline2/VEGAS2scripts/

    保存vegas2.pl

    完成以上1)-6)的工作后,输入:wq 保存vegas2.pl

    开始运行gene-based关联分析研究

    输入以下代码:

    /path/to/perl vegas2.pl test_vegas2input.txt -pop 1000GEURO -subpop EURO -genesize 0kbloc -top 100 -sex BothMnF -max 1000000 -out genebased.V2out

    其中,/path/to/perl是指服务器放perl的路径;

    vegas2.pl是VEGAS2跑gene-based的perl脚本,与test_vegas2input.txt放在同一个路径里

    3、内容补充:

    运行这个软件,可能会遇到以下报错:

    3.1 报错1

    Can't locate Data/UUID.pm in @INC (@INC contains: /home/chenwenyan/perl5/lib/perl5 /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /software/VEGAS2/VEGAS2offline2/vegas4.pl line 4.

    解决方案是:安装Data::GUID模块。

    具体解决方式:

    1)下载、解压Data::GUID模块

    wget https://cpan.metacpan.org/authors/id/R/RJ/RJBS/Data-UUID-1.224.tar.gz

    tar -xzvf Data-UUID-1.224.tar.gz

    2)安装Data::GUID模块

    cd Data-UUID-1.224/

    perl Makefile.PL

    make

    make test

    make install

    完成以上测试后,如果没有报任何的错误,说明Data::GUID模块已经正确安装。

    3.2 报错2

    gcc:error:unrecognized command line option ‘-fstack-protector-strong’

    这个报错说明需要升级GCC的版本。

    -fstack-protector-strong要求GCC 4.9版本以上

    可以通过命令gcc -v查看服务器GCC的版本。

    如果没有达到4.9,则需要升级。

    gcc各种版本在这:http://ftp.gnu.org/gnu/gcc/

    关于升级GCC,有写的比我更详细的教程,推荐看这篇:
    https://www.cnblogs.com/julie-yang/p/4695845.html

    这里我就不再赘述。

  • 相关阅读:
    Python学习笔记(十一)
    Python学习笔记(十)
    Python学习笔记(九)
    Fatal error in launcher:Unable to create process using '"'
    通过xrdp服务实现windows远程桌面连接树莓派
    Python学习笔记(七)
    Python 杂集
    Python入门小练习
    Python标准库
    [Chrome](CSS) 解决Chrome font-size 小于 12px 无效
  • 原文地址:https://www.cnblogs.com/chenwenyan/p/11843753.html
Copyright © 2020-2023  润新知