CropGS-Hub:用于主要作物基因组预测的基因型和表型资源综合数据库

CropGS-Hub:用于主要作物基因组预测的基因型和表型资源综合数据库

提供了7种植物的预测

这个网站主要提供的功能有:

  1. 该数据库提供了包括玉米、水稻、小米、陆地棉、大豆、鹰嘴豆、油菜、小米这些物种的基因型SNP和表型文件下载。
  2. 可以用户提交SNP文件,预测表型。SNP表型需要由SNPGT创建。
  3. 用户上传SNPGT创建的基因型文件,和表型文件,使用网站在线调用贝叶斯模型、LightGBM、GBLUP、rrBLUP模型进行模型训练,然后即可获得通过自己的基因型的训练得到的模型。
    要求上传的训练模型的时候SNP的数量不能超过5万行,样本数不超过1000个。
  4. 还针对玉米和水稻提供了杂交设计平台,要求输入的亲本数量不超过50个。

作者开发的SNPGT工具提供了win和linux版。

要输入基因型SNP文件对表型进行预测时

需要的基因型(测试集)格式如下:

#CHROM  POS Line1   line2   ...
1   1077    T   T   ...
1   12127   G   G   ...
... ... ... ... ...
10  1299332 T   A   ...
10  1299513 G   G   ...

第1列是染色体编号,第2列是SNP的物理位置,第三列开始即为样本在该位置的碱基类型。

要训练自己的模型时

需要提供的(训练集)基因型文件的格式如下:

#CHROM  POS REF ALT Sample001   Sample002   Sample003   ...
1   8077    A   T   A   A   A   ...
1   9233    T   C   T   T   T   ...
1   12911   C   T   C   C   C   ...
1   28126   T   C   C   T   T   ...
1   44681   C   T   T   C   C   ...
1   44693   T   G   G   T   T   ...
... ... ... ... ... ... ... ...

第1列染色体编号,第2列snp物理位置,第3列参考基因组的碱基,第4列是变异的碱基,第5列开始是样本在该位置的碱基类型。
需要提供的表型文件的格式如下:

LINE    Plant_height    Panicle_length  ...
Sample001   139.333 26.178  ...
Sample002   128.889 29.420  ...
Sample003   106.426 27.567  ...

训练完成后,使用的测试集和上面的测试集的基因型格式是一样的。
基因型数据应采用代表四个核苷酸的碱基“A”、“G”、“C”和“T”的形式。杂合基因型应以“H”表示,未知或缺失基因型应以“.”表示。

注意:一定要注意基因型的参考基因组是否一致,如果你的SNP和数据库的参考基因组不一致,有2种方法解决。

  1. 使用作者数据库的参考基因组文件(https://github.com/JessieChen7/LinSNPGT),使用SNPGT对你的测序文件从头分析获得基因型文件。
  2. 使用你自己的基因型和表型,从头训练你自己的模型。只不过基因型数量限制为5万个snp,样本数量限制为1000个。如果你的SNP或样本数量超过阈值,则只能使用方法1。
    限制样本数和SNP数,一方面是为了降低服务器运算开销,另一方面是因为规模足够大之后,这里提供的6种建模方法可能已经不能获得最优的预测结果了,此时可能就需要深度学习的模型了。
下面以棉花为例,使用LinSNPGT来进行实验。

LinSNPGT依赖的软件列表如下:

  • Python3
  • bowtie2
  • samtools
  • java8
  • seqtk (SNPGT-bulid依赖此软件)

使用作者提供的基因组参考文件,进行分型
把下载的基因组参考压缩文件tar.gz放入01.Reference_Genome文件夹中,把你的下机数据修改为test1_1.fastq.gztest1_2.fastq.gz这种格式。
SNPGT.config的内容如下

#=================== Software Path =======================#
Java_Path=./jdk/bin/java
Bowtie2_Path=bowtie2
Samtools_Path=samtools

#=================== LinSNPGT Config =======================#
* [Project]
Project_Name=Cotton

* [Species and Dataset]
RefDataSet_File=Cotton_1245_Inbred.tar.gz

* [Running LinSNPGT Thread]
Thread_Count=24

* [Samples_list]
> ===========================================
> |sample | Read1          | Read2          |
> -------------------------------------------
  | Line1 | test1_1.fastq.gz | test1_2.fastq.gz |
  | Line2 | test2_1.fastq.gz | test2_2.fastq.gz |

注意这个config文件里,最后的样本名这块,样本格式必须是gz压缩文件,

>|sample|samplename_1.fastq.gz|samplename_2.fastq.gz|

修改SNPGT.config这个配置文件后,运行python3 SNPGT.py即可。


使用SNPGT利用自己的基因组文件,进行基因分型,获取基因型文件

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

SNPGT-build.py参数如下:
-F FASTA参考基因组文件
-B BIM SNP的bim文件,使用plink获得
-S SPECIES物种名称
-N STRAIN指定群体的名称
-L BINLEN 这是要提取的SNP上下游的总长度,默认是400,即上下游各200bp,可以根据基因组大小和染色体的重复情况修改这个长度
--JavaPath JAVA8PATHjava8的路径
--SamtoolsPath SAMTOOLSPATHsamtools的路径
--SeqtkPath SEQTKPATHseqtk的路径
--Bowtie2Path BOWTIE2PATHbowtie2的路径

运行SNPGT-build.py或者SNPGT.py都需要在安装目录运行,否则会报各种各样的错误。

注意群体名称这块,最好不要有超过1个下划线。如果还有下划线可能会报错。
SNPGT的原理是根据SNP位点提取染色体上下游各200bp的片段,组成短片段,然后使用bowtie2把原始测序进行比对到提取的短序列上,后续使用gatk3.8 call SNP,这个算法比直接使用全基因组call SNP会快很多。但是也是有代价的,准确率并不是100%。


SNPGT的实现原理示意图

从图中的20 Fold验证可以看出准确率依然高达99.68%,但是时间快了20.07倍。所以不用再call全基因组了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容