美文网首页基因组读书
利用EIGENSOFT中的smartpca模块进行PCA分析

利用EIGENSOFT中的smartpca模块进行PCA分析

作者: 在路上_bcca | 来源:发表于2019-03-18 14:33 被阅读0次

    这个工具是很经典老牌的工具,是非常可靠也得到了学术界认可的一款软件。工具官网:https://www.hsph.harvard.edu/alkes-price/software/, 也可以通过conda下载比较简便。这个工具的缺点就是它只支持linux系统,而且对输入文件的格式有一定的要求。最新的版本采用的算法可以更好获得群体结构信息,具体可参考这篇文章:Fast Principal-Component Analysis Reveals Convergent Evolution of ADH1B in Europe and East Asia. The American Journal of Human Genetics 98, 456–472, March 3, 2016

    实 战

    1 首先使用plink将vcf文件转格式转化成.ped和.map结尾的文件,利用自己的命令获得标准ped和map格式文件也可以。本案例采用数据是用plink 对3245份水稻LD pruning过后得到的76万个SNP;

    2 进一步使用EIGENSOFT中内置的convertf 文件转化为smartpca的输入文件:

    convertf -p transfer.conf

    该步骤需要一个 transfer.conf,将文件的输入输出写进去,然后执行command。

    ## transfer.conf

    genotypename:    3245_pruned_SNP.ped

    snpname:        3245_pruned_SNP.map # or example.map, either works

    indivname:      3245_pruned_SNP.ped # or example.ped, either works

    outputformat:    EIGENSTRAT

    genotypeoutname: 3245.eigenstratgeno

    snpoutname:      3245.snp

    indivoutname:    3245.ind

    familynames:    NO

    该步骤会生产生三个pca所需的输入文件 3245.eigenstrat, 3245.snp 和3245.ind

    3 运行smartpca 代码如下:

    smartpca -p runningpca.conf

    其参数文件runningpca.conf内容 如下,根据你的数据参照manual来修改对应的参数:

    genotypename: 3245.geno

    snpname: 3245.snp

    indivname: 3245.ind

    evecoutname: 3245.pca.evec

    evaloutname: 3245.eval

    altnormstyle: NO

    numoutevec: 20

    numoutlieriter: 5

    outliersigmathresh: 6.0、

    截取了运行中的屏幕输出:

    可以看到,smartpca有对数据进行统计与过滤处理,这里有一些低质量的1360个snp和148份材料被去除,最终生成的文件只有3097份材料的结果!

    运行完会生成两个个文件:

    3245.pca.evec(特征向量结果);3245.eval(特征值结果)。

    相关文章

      网友评论

        本文标题:利用EIGENSOFT中的smartpca模块进行PCA分析

        本文链接:https://www.haomeiwen.com/subject/cohpbftx.html