BLUPF90軟件基本介紹
本期內(nèi)容簡(jiǎn)介
遺傳評(píng)估軟件BLUPF90的基本介紹與使用教程
目錄:
1. 基礎(chǔ)知識(shí)
? ? ? ? 1.1 BLUP模型
? ? ? ??? ? ? ??1.1.1 ABLUP模型
? ? ? ??? ? ? ??1.1.2 GBLUP模型
? ? ? ??? ? ? ??1.1.3 一步法(ssGBLUP)模型
? ? ? ??1.2 混合親緣關(guān)系矩陣H
2. 軟件概況
? ? ? ??2.1 發(fā)展歷史
? ? ? ??2.2 使用權(quán)限
? ? ? ??2.3 支持平臺(tái)
? ? ? ??2.4 軟件模塊
? ? ? ??2.5 使用流程(遺傳評(píng)估)
3. 程序文件
? ? ? ??3.1 數(shù)據(jù)文件
? ? ? ??? ? ? ??3.1.1 數(shù)據(jù)文件整體要求
? ? ? ??? ? ? ??3.1.2 表型數(shù)據(jù)文件
? ? ? ??? ? ? ??3.1.3 系譜數(shù)據(jù)文件
? ? ? ??? ? ? ??3.1.4 基因組數(shù)據(jù)文件
? ? ? ??3.2 參數(shù)文件
? ? ? ??? ? ? ??3.2.1 參數(shù)文件整體要求
? ? ? ??? ? ? ??3.2.2 必要參數(shù)
? ? ? ??? ? ? ??3.2.3 可選參數(shù)
? ? ? ? ? ? ? ? 3.2.4 效應(yīng)定義小結(jié)
? ? ? ? ? ? ? ? 3.2.5 額外參數(shù)
? ? ? ??3.3 結(jié)果文件
? ? ? ??? ? ? ??3.3.2 評(píng)估結(jié)果文件
4. 實(shí)踐示例
1. 基礎(chǔ)知識(shí)
1.1 BLUP模型
1.1.1 ABLUP模型
ABLUP模型是一種基于系譜的混合線性模型,用A矩陣來(lái)計(jì)算育種值

1.1.2 GBLUP模型
GBLUP模型是一種基于分子標(biāo)記的混合線性模型,用G矩陣來(lái)計(jì)算育種值

1.1.3 一步法(ssGBLUP)模型
一步法模型與BLUP一致,但隨機(jī)效應(yīng)的(協(xié))方差結(jié)構(gòu)不一致。使用混合親緣關(guān)系矩陣H代替加性親緣關(guān)系矩陣A陣,同時(shí)使用系譜和基因組信息求解

1.2 混合親緣關(guān)系矩陣H
其實(shí)質(zhì)為利用基因組信息調(diào)整未基因分型個(gè)體的親緣關(guān)系


2. 軟件概況
2.1 發(fā)展歷史
1997年由佐治亞大學(xué)的 Ignacy Misztal 開(kāi)發(fā),最初是為了課程教學(xué),時(shí)至今日仍在不斷更新,Linux版本最新版2023-01-25發(fā)布
2.2 使用權(quán)限
研究使用:免費(fèi)使用,但需在論文中引用
商業(yè)使用:需申請(qǐng)商業(yè)授權(quán)
2.3 支持平臺(tái)
Linux, Mac OSX, Windows
推薦使用Linux版本[1]

2.4 軟件模塊
不同功能分模塊提供,每個(gè)模塊提供一個(gè)可執(zhí)行文件
本次主要介紹遺傳評(píng)估
部分完整模塊信息可參閱application_programs[BLUPF90][2]

2.5 使用流程(遺傳評(píng)估)

請(qǐng)注意,已知方差組分時(shí)可省略方差組分估計(jì)步驟
3. 程序文件
3.1 數(shù)據(jù)文件
3.1.1 數(shù)據(jù)文件整體要求
不應(yīng)有標(biāo)題行
不應(yīng)出現(xiàn)字符#
使用空格作為分隔符,連續(xù)的多個(gè)空格將被視為一個(gè)分隔
不能使用制表符TAB作為分隔符
對(duì)于Linux平臺(tái),確保文件換行符為LR (\n)
可以使用dos2unix命令修改window平臺(tái)創(chuàng)建的文件
3.1.2 表型數(shù)據(jù)文件
個(gè)體編碼可以包含字母和數(shù)字(DMU中不能包含字母)
缺失值可任意指定
整型和浮點(diǎn)型變量無(wú)強(qiáng)制順序(DMU要求整型在前)

3.1.3 系譜數(shù)據(jù)文件
個(gè)體編碼可以包含字母和數(shù)字(DMU中不能包含字母)
系譜可以包含個(gè)體、父親、母親、受體母親、出生年
信息列之間無(wú)順序要求,可以通過(guò)參數(shù)指定
個(gè)體信息列必須包含在系譜中
默認(rèn)系譜為:個(gè)體、父親、母親三列(有順序)
未知個(gè)體使用0表示,不可修改

3.1.4 基因組數(shù)據(jù)文件
基因組文件為經(jīng)過(guò)調(diào)整的012格式
以0、1、2表示雙等位基因座中次要等位基因的數(shù)量,5表示缺失
等位基因之間不能具有空格
等位基因應(yīng)該從每行的相同位置起始
長(zhǎng)度不同的ID需要用空格補(bǔ)齊

3.2 參數(shù)文件
3.2.1 參數(shù)文件整體要求
參數(shù)文件以關(guān)鍵字和值的鍵值對(duì)形式指定
關(guān)鍵字為全大寫,占據(jù)單獨(dú)一行,不應(yīng)具有其他內(nèi)容
部分關(guān)鍵字有嚴(yán)格的順序要求
參數(shù)文件中可以包含#引導(dǎo)的注釋
完整的參數(shù)列表可以參閱用戶手冊(cè)[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 必要參數(shù)
參數(shù)文件必須包含六個(gè)關(guān)鍵字,且需在參數(shù)文件開(kāi)始時(shí),按如下順序指定:
DATAFILE
TRAITS
FIELDS_PASSED TO OUTPUT
WEIGHT(S)
RESIDUAL_VARIANCE
EFFECT
DATAFILE
表型數(shù)據(jù)文件名
文件名中不應(yīng)包含字符#
可以使用絕對(duì)路徑或者相對(duì)路徑
格式
DATAFILE
F1
示例
DATAFILE
data.txt
TRAITS
待評(píng)估的性狀在表型數(shù)據(jù)文件中的列位置
多個(gè)待評(píng)估的性狀以空格分隔
格式
TRAITS
t1 t2 t3
示例
TRAITS
4
示例
TRAITS
4 5
FIELDS_PASSED TO OUTPUT
在結(jié)果文件中額外輸出原始編碼
默認(rèn)輸出為重編碼后的數(shù)據(jù)
可以指定多列
無(wú)需指定以空行表示
格式
FIELDS_PASSED TO OUTPUT
p1 p2 .. pm
示例-輸出2、3列原始編碼
FIELDS_PASSED TO OUTPUT
2 3
示例-不輸出原始編碼
FIELDS_PASSED TO OUTPUT
WEIGHT(S)
加權(quán)數(shù)值在表型數(shù)據(jù)文件中的列數(shù)
無(wú)需指定以空行表示
格式
WEIGHT(S)
w
示例-加權(quán)數(shù)值在第4列
WEIGHT(S)
4
示例-不指定加權(quán)數(shù)值
WEIGHT(S)
RESIDUAL_VARIANCE
殘差的方差協(xié)方差矩陣
根據(jù)調(diào)用的模塊不同,可能作為先驗(yàn)值或真值
矩陣的階數(shù)和待評(píng)估的性狀相同
格式
RESIDUAL_VARIANCE
R
示例
RESIDUAL_VARIANCE
1 0
0 1
EFFECT
最關(guān)鍵的參數(shù)
e1 e2 e3 …
效應(yīng)在表型數(shù)據(jù)文件中的列數(shù)
指定列數(shù)的數(shù)量和待評(píng)估的性狀相同
type:變量類型
cross:分類變量
cov:協(xié)變量
form:變量格式
alpha:字符型
num:數(shù)值型
請(qǐng)注意,變量類型為協(xié)變量時(shí),變量格式默認(rèn)為數(shù)值型
格式
EFFECT
e1 e2 e3 ... type form
示例
EFFECT
2 cross alpha
或
EFFECT
2 2 cov num
3.2.3 可選參數(shù)
可選參數(shù)的指定位置:緊隨特定參數(shù)之后或必要參數(shù)后的任意位置
可選參數(shù)僅為程序運(yùn)行可選,部分參數(shù)的有無(wú)會(huì)影響到分析的模型和方法
部分可選參數(shù)之間也有相互順序
RANDOM
必須在EFFECT參數(shù)后
? ? ?
? ? ? ? 指定EFFECT為隨機(jī)效應(yīng)
? ? ? ??定義隨機(jī)效應(yīng)的方差-協(xié)方差矩陣
diagonal: 隨機(jī)效應(yīng)
sire : 父系效應(yīng)
animal : 動(dòng)物效應(yīng)(加性效應(yīng))
格式
RANDOM
random_type
示例
RANDOM
diagonal
FILE
必須在RANDOM后指定
RANDOM必須為sire或animal
? ? ? ?指定系譜文件
可以使用絕對(duì)路徑或者相對(duì)路徑
格式
FILE
fped
示例
FILE
pedigree.txt
FILE_POS
必須在FILE后指定
? ? ? ?定義系譜文件列信息
個(gè)體、父親、母親、受體母親、出生年份在系譜文件中的列數(shù),信息必須按如上順序
默認(rèn)1 2 3 0 0
格式
FILE_POS
animal sire dam alt_dam yob
示例
FILE_POS
1 2 3
SNP_FILE
必須在FILE或FILE_POS后指定
? ? ? ?指定基因組文件
該參數(shù)指定后,評(píng)估將從ABLUP改為ssGBLUP
? ? ? ?可以使用絕對(duì)路徑或者相對(duì)路徑
格式
SNP_FILE
fsnp
示例
SNP_FILE
genotypes.txt
PED_DEPTH
必須在FILE、FILE_POS或SNP_FILE后指定
? ? ? ?定義追溯的系譜深度
默認(rèn):3
使用全部系譜:0
格式
PED_DEPTH
p
示例
PED_DEPTH
0
(CO)VARIANCES
必須在RANDOM、FILE、FILE_POS、SNP_FILE或PED_DEPTH后指定
? ? ?
定義隨機(jī)效應(yīng)先驗(yàn)方差-協(xié)方差時(shí),根據(jù)調(diào)用的模塊不同,可能作為先驗(yàn)值或真值
矩陣的階數(shù)和待評(píng)估的性狀數(shù)相同
格式
(CO)VARIANCES
G
示例
(CO)VARIANCES
1 0
0 1
3.2.4 效應(yīng)定義小結(jié)
效應(yīng)參數(shù)按照如下順序,可以省略,但不可改變順序
EFFECT
RANDOM
FILE
FILE_POS
SNP_FILE
PED_DEPTH
(CO)VARIANCES
效應(yīng)指定的更多參數(shù)可以參閱用戶手冊(cè)[3]
固定效應(yīng)
EFFECT
2 cross alpha
加性效應(yīng)
EFFECT
alpha1 cross
RANDOM
animal
FILE
pedigree.txt
FILE POS
1 2 3
SNP FILE
genotypes.txt
PED DEPTH
0
(CO)VARIANCES ?
1.4373
永久性隨機(jī)環(huán)境效應(yīng)
EFFECT
3 cross alpha
RANDOM
diagonal
(CO)VARIANCES ?
3.2708
3.2.5 額外參數(shù)
不影響分析過(guò)程的核心
以OPTION開(kāi)始,每行定義一個(gè)
均有默認(rèn)值
參數(shù)可能僅對(duì)特定模塊有效
相互之間沒(méi)有順序要求。
OPTION missing 0
設(shè)定缺失值
OPTION conv_crit 1e-10
設(shè)定收斂標(biāo)準(zhǔn)
OPTION maxrounds 5000
設(shè)定最大迭代次數(shù)
OPTION solv_method PCG
設(shè)定求解方法(FSPAK, SOR, PCG)
OPTION sol se
計(jì)算標(biāo)準(zhǔn)誤差(求解方法強(qiáng)制為FSPAK,忽略O(shè)PTION solv_method )
OPTION use_yams
使用YAMS進(jìn)行分析
格式
OPTION alpha_size nn
示例
OPTION alpha_size 20
3.3 結(jié)果文件
3.3.1 重編碼結(jié)果文件
renf90.par ? ? ?
? ? ? ?參數(shù)卡文件的重編碼
renf90.dat ? ? ?
? ? ? ?數(shù)據(jù)文件的重編碼
? ? ? 依次為性狀的表型觀察值,效應(yīng)值,重編碼個(gè)體ID和原始個(gè)體ID

renaddxx.ped ? ? ? ?
系譜文件的重編碼
? ? ? ?
xx表示加性效應(yīng)在renf90.par中的效應(yīng)編號(hào)
? ? 第一列:重編碼的個(gè)體ID
? ? 第二列:重編碼的父親ID
? ? 第三列:重編碼的母親ID
? ? 第十列:原始的個(gè)體ID

3.3.2 評(píng)估結(jié)果文件
solutions
? ? ?性狀編號(hào)
? ?
? ? ?效應(yīng)值編號(hào)
? ?
? ? ?效應(yīng)值編碼
? ? ?估計(jì)值?
? ? ?標(biāo)準(zhǔn)誤差

4. 實(shí)踐示例
運(yùn)行步驟
數(shù)據(jù)整理:renumf90 test.par | tee renumf90.log
運(yùn)算:blupf90 renf90.par | tee blupf90.log
實(shí)際運(yùn)行材料和參數(shù)卡可以在公眾號(hào)后臺(tái)回復(fù)關(guān)鍵字“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
用戶手冊(cè)[3]:
http://nce.ads.uga.edu/wiki/lib/exe/fetch.php?media=blupf90_all8.pdf

供稿:卓越、李偉寧
編輯:孫福騰
校對(duì):李偉寧

團(tuán)隊(duì)其他公眾平臺(tái):
微信公眾號(hào) | 房子下面一頭豬

知乎|房子下面一頭豬 (https://www.zhihu.com/people/mang-guo-c-60-10)?
GitHub | CAU-TeamLiuJF? (https://github.com/CAU-TeamLiuJF)??