有病率、アレル頻度、HWD係数F、ディプロタイプ別リスクからケース・コントロールのディプロタイプ頻度を算出する。
public static double[][] CaseContFrac(double af,double f,double prev,double[] risk){
double[][] ret=new double[2][3];
double p=af;
double[] total={
p*p+p*(1-p)*f,2*p*(1-p)*(1-f),(1-p)*(1-p)+p*(1-p)*f
};
double[] ca={total[0]*risk[0],total[1]*risk[1],total[2]*risk[2]};
/*
* 和が1になるようにします
*/
StatUtilsX.MiscUtilY.standard(ca);
for(int i=0;i<ca.length;i++){
ret[0][i]=ca[i]*prev;
ret[1][i]=total[i]-ret[0][i];
}
return ret;
}