美文网首页GWAS分析
命令行中tassel的使用

命令行中tassel的使用

作者: 灵动的小猪 | 来源:发表于2018-08-16 14:28 被阅读202次
    • tassel需要Java环境

    • downloads tassel_5

    cd 
    wget -c https://bitbucket.org/tasseladmin/tassel-5-standalone/get/5f8d2852556a.zip
    zip 5f8d2852556a.zip
    mv tasseladmin-tassel-5-standalone-5f8d2852556a/ tassel/
    
    • 添加到环境变量中
    echo export "PATH=/tassel/tassel:$PATH" >>.bashrc
    
    • 命令行的tassel有很多的plugin,可以使用下面的命令查看包含了那些plugin
    run_pipeline.pl -ListPlugins
    
    • 而如果想要查看plugin的信息,可以使用下面的命令
    run_pipeline.pl -<plugin_name> 
    
    • 比如查看listplugin的帮助信息
    run_pipeline.pl -ListPlugins
    
    • 命令行的tassel可以使用pipeline同时来运行多条命令,但是需要注意的是,每调用一次plugin,在加完参数后都需要在加上 -endPlugin
    run_pipeline.pl -importGuess maize.hmp.txt -KinshipPlugin -method Centered_IBS -endPlugin -ExportPlugin -saveAs maize_kinship.txt -format SqrMatrix
    
    • 多个管道可以交叉进行
    管道可以由多个管道组成
    要正确使用-fork 和-combine(-fork<id> 指明了需要执行的命令以及顺序 )
    -combine只有在合并多个plugins输出的文件时才使用,作为接下来的plugin的出入
    每一个fork都有一个id
    Output from a Sub-Pipeline can be used as Input to a another Sub-Pipeline by referencing with the flag -input. (i.e. -input1)
    Each Sub-Pipeline (i.e. -fork) runs in it’s own CPU Process (i.e. Thread)
    
    • 上述的举例
    run_pipeline.pl -fork1 <plugin> <plugin> -endPlugin -fork2 <plugin> <plugin> -endPlugin -fork3 <plugin> <plugin> <plugin>
    run_pipeline.pl -fork1 <plugin> <plugin> -endPlugin -fork2 <plugin> -input1 <plugin> -endPlugin -fork3 <plugin> -input1 <plugin> <plugin>
    run_pipeline.pl -fork1 <plugin> <plugin> -endPlugin -fork2 <plugin> <plugin> -endPlugin -combine3 -input1 -input2 <plugin> <plugin> <plugin>
    run_pipeline.pl -fork1 <plugin> <plugin> -fork2 <pluginA> <pluginB> -input1
    run_pipeline.pl -fork1 -importGuess mdp_genotype.hmp.txt -FilterSiteBuilderPlugin -siteMinAlleleFreq 0.01 -endPlugin -fork2 -importGuess mdp_phenotype.txt -excludeLastTrait -combine3 -input1 -input2 -intersect -FixedEffectLMPlugin -endPlugin -export glm_output
    
    • 改变内存大小
    run_pipeline.pl -Xms512m -Xmx10g ...
    

    我自己分析使用正常的代码

    • 将vcf文件转换为phy文件,一遍可以构建进化树,然后使用PhyML 构建进化树,但是需要注意的是,这个vcf文件应该只包含SNP信息,不能有indel信息,因为INDEL位点在转换为phy文件时,会变成-或者0,这个0在phylip软件运行时识别不了会报错,也可以把0转换为-。因为这个使用的是全基因组的变异信息,所以INDEL位点实际上影响不是太大,但为了结果的准确性,最好还是使用SNP信息
    run_pipeline.pl -Xmx6G -importGuess zheng58_group_genotypegvcf_noother.vcf -ExportPlugin -saveAs zheng58_group.phy -format Phylip_Inter 
    #第一次在运行这个命令是报错了,然后我将B73_V4_ctg、Pt和Mt这些开头的都去掉就没问题了
    PhyML-3.1_linux64 -i zheng58_group.phy -d generic -b 1000 -m HKY85 -f m -v e -a e -o tlr
    
    

    参考

    Tassel 5.0 Pipeline (Command Line Interface)
    Tassel 5 Pipeline Tutorial

    相关文章

      网友评论

        本文标题:命令行中tassel的使用

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