範 例 五: 由不同來源親屬提供資訊建立選拔指數 程式檔名稱 : linEAR5.htm 參考文獻 : Van Vleck, L. D., E. J. Pollak., and E. A. B. Oltenacu. 1987. Genetics for the animal sciences. W. H. Freeman and company, New York, NY. pp. 278-283. OPTIONS LS=75 PS=60 NODATE; 不同來源親屬提供資訊建立選拔指數 建立對角線 資料來源 DATA DIAG; ajj:同ㄧ群提供資料個體間的累加性親屬係數(如 女兒們) (如 ajj 為 女兒j 與 另一女兒j' 的的累加性親屬係數) INPUT n p ajj; n: 每隻動物的資料筆數 h2=0.4; p: 同ㄧ群動物的隻數 r=0.6; h2: 遺傳率 r:重複勢 di=( ( ( 1+(n-1)*r) /n ) + (p -1) * ajj * h2 ) / p; 參考 Van Veleck et al., 1987 P279; *INPUT n p ajj rel $; 輸入 n p aij 資料; CARDS; 2 1 1 本身 1 1 1 父 1 1 1 母 3 40 0.25 後裔女兒(同父不同母) ; PROC PRINT; RUN; 非對角線 資料來源的群組彼此間的累加性親屬係數 DATA OD; G(i) : group of animal with information; INPUT G1 G2 G3 G4; additive relationship between i animal and j animal both with records; 對角線資料由上方輸入,故放 0 * 本身 父 母 後裔女兒; CARDS; 0 0.5 0.5 0.5 0.5 0 0 0.25 0.5 0 0 0.25 0.5 0.25 0.25 0 ; PROC IML; START; h2=0.4; P={17852 18751 18000 20000}; PMEAN={14000 14000 14000 14000}; P=P-PMEAN; P :實測乳量與當時族群平均離均差 aij :估計指數的動物與提供資料的動物之間的累加性親屬係數 aij :本例為 本身、父、母及後裔女兒(女兒由不同母親牛生) RHS :方程式組右手行的構建 aij*h2 aij={1, 0.5, 0.5, 0.5}; RHS=aij*h2; USE DIAG; READ all into DII; print DII; di = DII (|,NCOL(DII) |); DI = DIAG(di`); PRINT di; 將資料讀入矩陣 DII(含 n p ajj h2 r di 共6行 先將最後一行,新產生的元素存成 di 列 將 di 列轉換成只有對角元素的對腳矩陣 DI 以下,再將非對腳元素讀入,存成 OD 矩陣 VP=OD +DI 即完成左邊方程式係數矩陣的構建 解出指數的係數==> 左邊方程式係數逆矩陣*RHS USE OD; READ all into OD; OD=OD*h2; PRINT OD; VP=OD+DI; PRINT VP; b=INV(VP)*RHS; PRINT b; INDEX=P*b; *solution of b; PRINT INDEX; *print output INDEX for selection; r_IH= SQRT(b`*aij);PRINT r_IH; *print accuracy r_IH; FINISH; RUN;