根據(jù)系譜計(jì)算近交系數(shù)和親緣關(guān)系系數(shù)(How to)

用到的軟件包:asreml

運(yùn)行GetASremlInfor函數(shù)

將此代碼在R語言里面運(yùn)行即可

GetASremlInfor<-function(ped){
  require(asreml)
  ainv <- asreml.Ainverse(ped)$ginv
  ani <- ainv
  head(ani)
  n<-max(ani$Row,ani$Column)###查看逆矩陣中最大的號(hào)
  mat=matrix(0,n,n)###生成N階值為的0矩陣
  mat_xiang_guan=matrix(0,n,n)###生成N階值為的0矩陣
  mat[cbind(ani$Row,ani$Column)]<-ani$Ainverse####把行號(hào)和列號(hào)對(duì)應(yīng)的值賦給空矩陣
  mat[upper.tri(mat)]=t(mat)[upper.tri(t(mat))]####生成對(duì)稱矩陣生成A-1(asreml生成的逆矩陣)
  nnn_biao_ni<-mat
  biao_zhun_xi_pu_ju_zhen<-solve(nnn_biao_ni)###把原來的逆矩陣變換成系譜相關(guān)矩陣A
  ##############################求近交系數(shù)###################################
  inbreeding_coefficient<-diag(biao_zhun_xi_pu_ju_zhen)-1#求出矩陣的對(duì)角線怎栽,-1就是近交系數(shù)
  inbreeding_coefficient[inbreeding_coefficient < 0.000000001] <- 0
  matrix_number<-(1:n)###生成矩陣位置編號(hào)
  animal_code<-ped[,1]
  data<-data.frame(matrix_number,animal_code,inbreeding_coefficient)###生成一個(gè)數(shù)據(jù)框晓避,包括序號(hào)和近交系數(shù)
  write.csv(data,"inbreeding_coefficient_ data.csv")
  ################################下面是求相關(guān)系數(shù)###############################
  nnn<-biao_zhun_xi_pu_ju_zhen
  for (a in (1:n)){
    for (b in (1:n)){
      x<-nnn[a,b]/sqrt(nnn[a,a]*nnn[b,b])
      mat_xiang_guan[a,b]<-x
      }
  }
  xiang_guan_xi_shu<-mat_xiang_guan
  dim(xiang_guan_xi_shu)<-NULL###把矩陣編程變量尘盼,一維的
  hang<-rep(animal_code,each=n)####生成行
  lie<-rep(animal_code,n)######生成列
  length(lie);length(hang);length(xiang_guan_xi_shu)
  xiang_guan_xi_shu
  en<-data.frame(hang,lie,xiang_guan_xi_shu)######生成一個(gè)數(shù)據(jù)框,包括行、列、相關(guān)系數(shù)
  real_xishu<-en[which(en$xiang_guan_xi_shu >= 0.0000001),]##把近親系數(shù)為0的列去掉
  colnames(real_xishu)<-c("animal_code_1","animal_code_2","coefficient_of_coancestry")  
  real_xishu  
  write.csv(real_xishu,"coancestry_file.csv")
}

構(gòu)建系譜信息

ped <- data.frame(ID = c(1,2,3,4,5,6), Sire = c("NA","NA",1,1,4,5), Dam =c("NA","NA",2,"NA",3,2))
ped

<table>
<thead><tr><th scope=col>ID</th><th scope=col>Sire</th><th scope=col>Dam</th></tr></thead>
<tbody>
<tr><td>1 </td><td>NA</td><td>NA</td></tr>
<tr><td>2 </td><td>NA</td><td>NA</td></tr>
<tr><td>3 </td><td>1 </td><td>2 </td></tr>
<tr><td>4 </td><td>1 </td><td>NA</td></tr>
<tr><td>5 </td><td>4 </td><td>3 </td></tr>
<tr><td>6 </td><td>5 </td><td>2 </td></tr>
</tbody>
</table>

調(diào)用GetASremlInfor函數(shù),會(huì)在工作路徑下輸出兩個(gè)Excel

近交系數(shù):inbreeding_coefficient_ data.csv

親緣關(guān)系系數(shù):coancestry_file.csv

打印近交系數(shù)前6行

inbreeding_value <- read.csv("inbreeding_coefficient_ data.csv")
head(inbreeding_value)

<table>
<thead><tr><th scope=col>X</th><th scope=col>matrix_number</th><th scope=col>animal_code</th><th scope=col>inbreeding_coefficient</th></tr></thead>
<tbody>
<tr><td>1 </td><td>1 </td><td>1 </td><td>0.000</td></tr>
<tr><td>2 </td><td>2 </td><td>2 </td><td>0.000</td></tr>
<tr><td>3 </td><td>3 </td><td>3 </td><td>0.000</td></tr>
<tr><td>4 </td><td>4 </td><td>4 </td><td>0.000</td></tr>
<tr><td>5 </td><td>5 </td><td>5 </td><td>0.125</td></tr>
<tr><td>6 </td><td>6 </td><td>6 </td><td>0.125</td></tr>
</tbody>
</table>

打印親緣關(guān)系系數(shù)前6行

jinjiaoxishu <- read.csv("coancestry_file.csv")
head(jinjiaoxishu)

<table>
<thead><tr><th scope=col>X</th><th scope=col>animal_code_1</th><th scope=col>animal_code_2</th><th scope=col>coefficient_of_coancestry</th></tr></thead>
<tbody>
<tr><td>1 </td><td>1 </td><td>1 </td><td>1.0000000</td></tr>
<tr><td>3 </td><td>1 </td><td>3 </td><td>0.5000000</td></tr>
<tr><td>4 </td><td>1 </td><td>4 </td><td>0.5000000</td></tr>
<tr><td>5 </td><td>1 </td><td>5 </td><td>0.4714045</td></tr>
<tr><td>6 </td><td>1 </td><td>6 </td><td>0.2357023</td></tr>
<tr><td>8 </td><td>2 </td><td>2 </td><td>1.0000000</td></tr>
</tbody>
</table>


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末碉输,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子亭珍,更是在濱河造成了極大的恐慌敷钾,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,324評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肄梨,死亡現(xiàn)場(chǎng)離奇詭異阻荒,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)众羡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門侨赡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人粱侣,你說我怎么就攤上這事羊壹。” “怎么了齐婴?”我有些...
    開封第一講書人閱讀 162,328評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵油猫,是天一觀的道長。 經(jīng)常有香客問我尔店,道長眨攘,這世上最難降的妖魔是什么主慰? 我笑而不...
    開封第一講書人閱讀 58,147評(píng)論 1 292
  • 正文 為了忘掉前任嚣州,我火速辦了婚禮鲫售,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘该肴。我一直安慰自己情竹,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,160評(píng)論 6 388
  • 文/花漫 我一把揭開白布匀哄。 她就那樣靜靜地躺著秦效,像睡著了一般。 火紅的嫁衣襯著肌膚如雪涎嚼。 梳的紋絲不亂的頭發(fā)上阱州,一...
    開封第一講書人閱讀 51,115評(píng)論 1 296
  • 那天,我揣著相機(jī)與錄音法梯,去河邊找鬼苔货。 笑死,一個(gè)胖子當(dāng)著我的面吹牛立哑,可吹牛的內(nèi)容都是我干的夜惭。 我是一名探鬼主播,決...
    沈念sama閱讀 40,025評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼铛绰,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼诈茧!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起捂掰,我...
    開封第一講書人閱讀 38,867評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤敢会,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后这嚣,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鸥昏,經(jīng)...
    沈念sama閱讀 45,307評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,528評(píng)論 2 332
  • 正文 我和宋清朗相戀三年疤苹,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了互广。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,688評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡卧土,死狀恐怖惫皱,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情尤莺,我是刑警寧澤旅敷,帶...
    沈念sama閱讀 35,409評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站颤霎,受9級(jí)特大地震影響媳谁,放射性物質(zhì)發(fā)生泄漏涂滴。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,001評(píng)論 3 325
  • 文/蒙蒙 一晴音、第九天 我趴在偏房一處隱蔽的房頂上張望柔纵。 院中可真熱鬧,春花似錦锤躁、人聲如沸搁料。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽郭计。三九已至,卻和暖如春椒振,著一層夾襖步出監(jiān)牢的瞬間昭伸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評(píng)論 1 268
  • 我被黑心中介騙來泰國打工澎迎, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留庐杨,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,685評(píng)論 2 368
  • 正文 我出身青樓嗡善,卻偏偏與公主長得像辑莫,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子罩引,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,573評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容