欢迎光临散文网 会员登陆 & 注册

BLUPF90软件基本介绍

2023-02-26 23:08 作者:房子下面一头猪  | 我要投稿

本期内容简介

遗传评估软件BLUPF90的基本介绍与使用教程


目录:

1. 基础知识

        1.1 BLUP模型

                1.1.1 ABLUP模型

                1.1.2 GBLUP模型

                1.1.3 一步法(ssGBLUP)模型

        1.2 混合亲缘关系矩阵H

2. 软件概况

        2.1 发展历史

        2.2 使用权限

        2.3 支持平台

        2.4 软件模块

        2.5 使用流程(遗传评估)

3. 程序文件

        3.1 数据文件

                3.1.1 数据文件整体要求

                3.1.2 表型数据文件

                3.1.3 系谱数据文件

                3.1.4 基因组数据文件

        3.2 参数文件

                3.2.1 参数文件整体要求

                3.2.2 必要参数

                3.2.3 可选参数

                3.2.4 效应定义小结

                3.2.5 额外参数

        3.3 结果文件

                3.3.2 评估结果文件

4. 实践示例


1. 基础知识

1.1 BLUP模型

1.1.1 ABLUP模型

ABLUP模型是一种基于系谱的混合线性模型,用A矩阵来计算育种值

1.1.2 GBLUP模型

GBLUP模型是一种基于分子标记的混合线性模型,用G矩阵来计算育种值

1.1.3 一步法(ssGBLUP)模型

一步法模型与BLUP一致,但随机效应的(协)方差结构不一致。使用混合亲缘关系矩阵H代替加性亲缘关系矩阵A阵,同时使用系谱和基因组信息求解

1.2 混合亲缘关系矩阵H

其实质为利用基因组信息调整未基因分型个体的亲缘关系

2. 软件概况

2.1 发展历史

1997年由佐治亚大学的 Ignacy Misztal 开发,最初是为了课程教学,时至今日仍在不断更新,Linux版本最新版2023-01-25发布

2.2 使用权限

研究使用:免费使用,但需在论文中引用
商业使用:需申请商业授权

2.3 支持平台

Linux, Mac OSX, Windows

推荐使用Linux版本[1]

2.4 软件模块

不同功能分模块提供,每个模块提供一个可执行文件
本次主要介绍遗传评估
部分完整模块信息可参阅application_programs[BLUPF90][2]


2.5 使用流程(遗传评估)


请注意,已知方差组分时可省略方差组分估计步骤

3. 程序文件

3.1 数据文件

3.1.1 数据文件整体要求

不应有标题行
不应出现字符#
使用空格作为分隔符,连续的多个空格将被视为一个分隔

  • 不能使用制表符TAB作为分隔符

对于Linux平台,确保文件换行符为LR (\n)

  • 可以使用dos2unix命令修改window平台创建的文件

3.1.2 表型数据文件

个体编码可以包含字母数字(DMU中不能包含字母)
缺失值可任意指定
整型和浮点型变量无强制顺序(DMU要求整型在前)

3.1.3 系谱数据文件

个体编码可以包含字母数字(DMU中不能包含字母
系谱可以包含个体、父亲、母亲、受体母亲、出生年
信息列之间无顺序要求,可以通过参数指定
个体信息列必须包含在系谱中
默认系谱为:个体、父亲、母亲三列(有顺序)
未知个体使用0表示,不可修改

3.1.4 基因组数据文件

基因组文件为经过调整的012格式
以0、1、2表示双等位基因座中次要等位基因的数量,5表示缺失
等位基因之间不能具有空格
等位基因应该从每行的相同位置起始
长度不同的ID需要用空格补齐

3.2 参数文件

3.2.1 参数文件整体要求

参数文件以关键字和值的键值对形式指定
关键字为全大写,占据单独一行,不应具有其他内容
部分关键字有严格的顺序要求
参数文件中可以包含#引导的注释
完整的参数列表可以参阅用户手册[3]

DATAFILE
data.txt
TRAITS
4
FIELDS_PASSED TO OUTPUT
1
WEIGHT(S)
RESIDUAL_VARIANCE  
1.9004
EFFECT
2 cross alpha    # 1st effect fixed (sex)
EFFECT
3 cross alpha    # 2nd effect random (litter)
RANDOM
diagonal
(CO)VARIANCES  
3.2708
EFFECT   # 3rd effect random (animal)
1 cross alpha
RANDOM
animal
FILE
pedigree.txt
FILE_POS
1 2 3
SNP_FILE
genotypes.txt
PED_DEPTH
0
(CO)VARIANCES  
1.4373

3.2.2 必要参数

参数文件必须包含六个关键字,且需在参数文件开始时,按如下顺序指定:

  • DATAFILE

  • TRAITS

  • FIELDS_PASSED TO OUTPUT

  • WEIGHT(S)

  • RESIDUAL_VARIANCE

  • EFFECT

DATAFILE

表型数据文件名

  • 文件名中不应包含字符#

  • 可以使用绝对路径或者相对路径

格式

DATAFILE
F1

示例

DATAFILE
data.txt

TRAITS

待评估的性状在表型数据文件中的列位置

  • 多个待评估的性状以空格分隔

格式

TRAITS
t1 t2 t3

示例

TRAITS
4

示例

TRAITS
4 5

FIELDS_PASSED TO OUTPUT

在结果文件中额外输出原始编码

  • 默认输出为重编码后的数据

  • 可以指定多列

  • 无需指定以空行表示

格式

FIELDS_PASSED TO OUTPUT
p1 p2 .. pm

示例-输出2、3列原始编码

FIELDS_PASSED TO OUTPUT
2 3

示例-不输出原始编码

FIELDS_PASSED TO OUTPUT

WEIGHT(S)

加权数值在表型数据文件中的列数

  • 无需指定以空行表示

格式

WEIGHT(S)
w

示例-加权数值在第4列

WEIGHT(S)
4

示例-不指定加权数值

WEIGHT(S)

RESIDUAL_VARIANCE

残差的方差协方差矩阵

  • 根据调用的模块不同,可能作为先验值或真值

  • 矩阵的阶数和待评估的性状相同

格式

RESIDUAL_VARIANCE
R

示例

RESIDUAL_VARIANCE
1 0
0 1

EFFECT

关键的参数

e1 e2 e3 …

  • 效应在表型数据文件中的列数

  • 指定列数的数量和待评估的性状相同

type:变量类型

  • cross:分类变量

  • cov:协变量

form:变量格式

  • alpha:字符型

  • num:数值型

请注意,变量类型为协变量时,变量格式默认为数值型

格式

EFFECT
e1 e2 e3 ... type form

示例

EFFECT
2 cross alpha

EFFECT
2 2 cov num

3.2.3 可选参数

可选参数的指定位置紧随特定参数之后或必要参数后的任意位置

可选参数仅为程序运行可选,部分参数的有无会影响到分析的模型和方法

部分可选参数之间也有相互顺序

RANDOM

必须在EFFECT参数后      
        指定EFFECT为随机效应
        定义随机效应的方差-协方差矩阵

  • diagonal: 随机效应

  • sire : 父系效应

  • animal : 动物效应(加性效应)

格式

RANDOM
random_type

示例

RANDOM
diagonal

FILE

必须在RANDOM后指定

RANDOM必须为sireanimal
       指定系谱文件

  • 可以使用绝对路径或者相对路径

格式

FILE
fped

示例

FILE
pedigree.txt

FILE_POS

必须在FILE后指定
       定义系谱文件列信息

  • 个体、父亲、母亲、受体母亲、出生年份在系谱文件中的列数,信息必须按如上顺序

  • 默认1 2 3 0 0

格式

FILE_POS
animal sire dam alt_dam yob

示例

FILE_POS
1 2 3

SNP_FILE

必须在FILEFILE_POS后指定
       指定基因组文件

该参数指定后,评估将从ABLUP改为ssGBLUP
       可以使用绝对路径或者相对路径

格式

SNP_FILE
fsnp

示例

SNP_FILE
genotypes.txt

PED_DEPTH

必须在FILE、FILE_POSSNP_FILE后指定
       定义追溯的系谱深度

  • 默认:3

  • 使用全部系谱:0

格式

PED_DEPTH
p

示例

PED_DEPTH
0

(CO)VARIANCES

必须在RANDOMFILEFILE_POSSNP_FILEPED_DEPTH后指定      
定义随机效应先验方差-协方差时,根据调用的模块不同,可能作为先验值或真值

  • 矩阵的阶数和待评估的性状数相同

格式

(CO)VARIANCES
G

示例

(CO)VARIANCES
1 0
0 1

3.2.4 效应定义小结

效应参数按照如下顺序,可以省略,但不可改变顺序

  • EFFECT

  • RANDOM

  • FILE

  • FILE_POS

  • SNP_FILE

  • PED_DEPTH

  • (CO)VARIANCES

效应指定的更多参数可以参阅用户手册[3]

固定效应

EFFECT
2 cross alpha

加性效应

EFFECT
alpha1 cross
RANDOM
animal
FILE
pedigree.txt
FILE POS
1 2 3
SNP FILE
genotypes.txt
PED DEPTH
0
(CO)VARIANCES  
1.4373

永久性随机环境效应

EFFECT
3 cross alpha
RANDOM
diagonal
(CO)VARIANCES  
3.2708

3.2.5 额外参数

不影响分析过程的核心
OPTION开始,每行定义一个
均有默认值
参数可能仅对特定模块有效
相互之间没有顺序要求。

OPTION missing 0

设定缺失值

OPTION conv_crit 1e-10

设定收敛标准

OPTION maxrounds 5000

设定最大迭代次数

OPTION solv_method PCG

设定求解方法(FSPAK, SOR, PCG)

OPTION sol se

计算标准误差(求解方法强制为FSPAK,忽略OPTION solv_method )

OPTION use_yams

使用YAMS进行分析

格式

OPTION alpha_size nn

示例

OPTION alpha_size 20

3.3 结果文件

3.3.1 重编码结果文件

renf90.par      
       参数卡文件的重编码

renf90.dat      
       数据文件的重编码

      依次为性状的表型观察值,效应值,重编码个体ID原始个体ID


renaddxx.ped        
系谱文件的重编码        

xx表示加性效应在renf90.par中的效应编号

  •     第一列:重编码的个体ID

  •     第二列:重编码的父亲ID

  •     第三列:重编码的母亲ID

  •     第十列:原始的个体ID


3.3.2 评估结果文件

solutions
     性状编号    
     效应值编号    
     效应值编码
     估计值 
     标准误差


4. 实践示例

运行步骤

  1. 数据整理:renumf90 test.par | tee renumf90.log

  2. 运算:blupf90 renf90.par | tee blupf90.log

实际运行材料和参数卡可以在公众号后台回复关键字“BLUPF90”获取


Linux版本[1]:

http://nce.ads.uga.edu/html/projects/programs/

application_programs[BLUPF90][2]:

http://nce.ads.uga.edu/wiki/doku.php?id=application_programs

用户手册[3]:

http://nce.ads.uga.edu/wiki/lib/exe/fetch.php?media=blupf90_all8.pdf


供稿:卓越、李伟宁

编辑:孙福腾

校对:李伟宁

团队其他公众平台:

微信公众号 | 房子下面一头猪


知乎|房子下面一头猪 (https://www.zhihu.com/people/mang-guo-c-60-10) 

GitHub | CAU-TeamLiuJF  (https://github.com/CAU-TeamLiuJF)  


BLUPF90软件基本介绍的评论 (共 条)

分享到微博请遵守国家法律