LinSNPGT:在 Linux 系统上对指定的 SNP 位点进行基因分型

LinSNPGT:在 Linux 系统上对指定的 SNP 位点进行基因分型


💡 总体介绍

  • 我们开发了一个在Windows系统上调用变种位点的工具包 WinSNPGT,对于那些Linux操作经验很少的人来说非常友好。它可以获得我们数据集中指定的 SNP 位点的原始测序数据的基因型。LinSNPGT 是该工具包的 Linux 平台版本。
  • 以下是该工具包的安装和使用说明。

🧾 背景

  • 我们开发了一个表型预测平台,CropGS-Hub,其中包含多个高质量的重要农作物数据集(如水稻、玉米等)。这些数据集被用作训练集,构建表型预测模型。用户可以将他们自己样本的基因型上传到该平台,进行在线的表型预测。
  • LinSNPGT工具包的开发是为了确保用户上传的基因型与建模训练集中的基因型相匹配,从而避免预测结果出现偏差。用户可以在Linux系统上运行该程序,通过简单的操作实现从文件测序到获取基因型的整个过程。

🔍 测试数据

  • 示例数据文件未包含在安装包中,可以通过点击下载:示例数据
tar -zxvf example-data.tar.gz 

示例数据文件的物种是 Oryza sativa(水稻),基因分型时可以在工具包中选择与水稻相关的数据集,例如 GSTP007 ~ GSTP009。



🌟 安装

  • LinSNPGT 依赖环境&软件

    • Python3
    • bowtie2
    • samtools
    • java8
  • 配置&安装

    git clone https://gitee.com/Min-Zer0/LinSNPGT.git
    
    cd LinSNPGT
    chmod +x ./install.sh && ./install.sh
    
    # install java8
    ./install.Java8.sh
    
    # install bowtie2
    sudo apt install bowtie2
    
    # install samtools
    sudo apt install samtools
    
    # install seqtk if you want to use **SNPGT-build**
    sudo apt-get install seqtk
    

🌟 SNPGT

  • LinSNPGT安装后有3个子文件夹和3个文件

    • .sys/
    • 01.Reference_Genome/
    • 02.Input_Fastq/
    • SNPGT-build.py
    • SNPGT.config
    • SNPGT.py

  • 要通过SNPGT.py 运行 LinSNPGT,用户需要填写SNPGT.config 并将文件放在相应的路径中。

  1. 填写 config.txt 文件
    • Software Path:该内容一般不需要更改。

    • Project_Name:输入您的项目名称,该名称将作为输出文件前缀。

    • RefDataSetFile:输入与要拟合的模型相对应的数据集。

      • 上面列出了可用的物种和数据集,包括它们的下载链接。
      • RefDataSet 的物种应与您的原始测序数据相匹配。
    • Thread_Count:输入可用于运行程序的线程数

    • Samples_list:填写您的原始测序数据及其对应的样本名称。

      • 必须遵循格式

        | SAMPLE NAME | RAW READS NAME | RAW READS NAME|

      • 由竖线分隔的,每个样本填写在单独的行中,每个Reads文件表示在单独的列中;Read1在前,Read2在后。

    • config.txt (示例)

      #=================== Software Path =======================#
      Java_Path=./jdk/bin/java
      Bowtie2_Path=bowtie2
      Samtools_Path=samtools
      
      #=================== LinSNPGT Config =======================#
      * [Project]
      Project_Name=Rice
      
      * [Species and Dataset]
      RefDataSet_File=Rice_705_Inbred
      
      * [Running LinSNPGT Thread]
      Thread_Count=10
      
      * [Samples_list]
      > ===========================================
      > |sample | Read1          	 | Read2          	|
      > -------------------------------------------
        | Line1 | test1_1.fastq.gz | test1_2.fastq.gz |
        | Line2 | test2_1.fastq.gz | test2_2.fastq.gz |
      
  2. 下载 RefDataSetFile 文件 (*.tar.gz) 并将其移动到路径:./01.Reference_Genome/
  3. 移动原始测序数据 (*.fastq.gz)(*.fastq)到路径:./02.Input_Fastq
  4. 运行命令:
    python SNPGT.py
    

  • 输出 & 后续
    • 程序完成后会在Result/目录中输出结果文件

      • 标准格式 VCF(variant call format) 文件
      • *.Genotype.txt (样本基因分型矩阵,格式如下)
      CHROMPOSLine 1line 2line N
      Chr1128960A.C
      Chr1133137CCT
      Chr12321216AAA
      Chr12364257ACC
      Chr12364755...
    • 上传 *.Genotype.txtCropGS-Hub 以完成后续分析。


🌟 SNPGT-build

  • 如果用户有我们提供的14个作物的数据集之外的基因分型需求,可以尝试使用 SNPGT-build 脚本制作自己的RefDataSetFile,然后使用SNPGT完成基因分型。

    python SNPGT-build.py -h
    
    usage: SNPGT-build.py [-h] [-F FASTA] [-B BIM] [-S SPECIES] [-N STRAIN] [-L BINLEN] [--JavaPath JAVAPATH] [--SamtoolsPath SAMTOOLSPATH] [--SeqtkPath SEQTKPATH]
                      [--Bowtie2Path BOWTIE2PATH]
    
    SNPGT-build (Tools for make RefGenome)
    
    optional arguments:
      -h, --help            show this help message and exit
      -F FASTA, --fasta FASTA
                            Whole genome reference sequence
      -B BIM, --bim BIM     SNP site information(bim file)
      -S SPECIES, --species SPECIES
                            Specify species name; eg. Rice
      -N STRAIN, --strain STRAIN
                            Specify strain name; eg. 378_Inbred
      -L BINLEN, --binlen BINLEN
                            The simplified of the genome retains base length on both sides of the SNP. The default value is 400
      --JavaPath JAVAPATH   Path to java8. The default is ./jdk/bin/java
      --SamtoolsPath SAMTOOLSPATH
                            Path to samtools.
      --SeqtkPath SEQTKPATH
                            Path to Seqtk.
      --Bowtie2Path BOWTIE2PATH
                            Path to bowtie2-build.
    
  • 运行示例

    python SNPGT-build.py -F path_to/Rice.fa -B path_to/Rice_378_Inbred.bim -S Rice -N 378_Inbre`
    

👥 联系我们

  • 邱杰 Jie Qiu (qiujie@shnu.edu.cn)
  • 朱旻 Min Zhu (zer0min@outlook.com)
  • 陈嘉欣 Jiaxin Chen (jxchen1217@gmail.com)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值