家系データをシミュレーションで作る4

  • 4. 両親のジェノタイプから子のジェノタイプを作る
# 父・母のジェノタイプをランダムに作る
father<-MakeHaplotype(NaS,PaS,2)
mother<-MakeHaplotype(NaS,PaS,2)
father
mother
# 配偶子を作る
father.gamates<-Rec.Haplotype(father[1,],father[2,],Dg)
mother.gamates<-Rec.Haplotype(mother[1,],mother[2,],Dg)
# 父由来・母由来の配偶子をランダムに選んで子のジェノタイプを決める
from.father<-father.gamates[sample(1:2,1),]
from.mother<-mother.gamates[sample(1:2,1),]
offspring<-matrix(c(from.father,from.mother),byrow=TRUE,nrow=2)
offspring
    • うまく行っているかどうか、目視で確認する
father
mother
offspring
    • 両親のジェノタイプから子のジェノタイプを作る処理を関数にする
MakeOffspring<-function(father,mother,d){
  # 配偶子を作る
  father.gamates<-Rec.Haplotype(father[1,],father[2,],d)
  mother.gamates<-Rec.Haplotype(mother[1,],mother[2,],d)
  # 父由来・母由来の配偶子をランダムに選んで子のジェノタイプを決める
  from.father<-father.gamates[sample(1:2,1),]
  from.mother<-mother.gamates[sample(1:2,1),]
  offspring<-matrix(c(from.father,from.mother),byrow=TRUE,nrow=2)
  offspring  
}
# 使ってみる
offspring<-MakeOffspring(father,mother,Dg)
father
mother
offspring