- このときのつづきで
- ディプロタイプからどんなハプロタイプが作られるか、その生成確率を求める
- rがその生成確率
- 最後の確率の計算を行列で一気に計算するように直せるだろうか
- ソースが正確かどうかまだ確かめていない
間違っているので修正が必要
i1<-sample(1:2,1);i2<-sample(1:2,1);i3<-sample(1:2,1);j1<-sample(1:2,1);j2<-sample(1:2,1);j3<-sample(1:2,1);k1<-sample(1:2,1);k2<-sample(1:2,1);k3<-sample(1:2,1)
print(paste(i1,i2,i3,j1,j2,j3,k1,k2,k3))
hap1<-c(i1,i2,i3)
hap2<-c(j1,j2,j3)
hap<-c(k1,k2,k3)
v1<-hap1==hap
v2<-hap2==hap
D<-matrix(c(v1,v2),byrow="TRUE",nrow=2)
s<-rep(0.1,length=(length(v1)-1))
if(min(v1 + v2) > 0){
r1<-v1[1]/2
r2<-v2[1]/2
rs<-c(r1,r2)
for ( i in 1:(length(v1)-1)){
M<-matrix(c(v1[i]*(1-s[i])*v1[i+1],v2[i]*s[i]*v1[i+1],v1[i]*s[i]*v2[i+1],v2[i]*(1-s[i])*v2[i+1]),byrow="TRUE",nrow=2)
rs<-M%*%rs
}
r<-sum(rs)
}else{
r<-0
}
print(v1)
print(v2)
print(r)