R/VarInt.cc.R

Defines functions VarInt.cc

VarInt.cc <- 
function(XY){
X1=XY[1];  X2=XY[2]; X3=XY[3]; X4=XY[4];
Y1=XY[5];  Y2=XY[6]; Y3=XY[7]; Y4=XY[8]
XD=XY[9]; YD=XY[10]

n1 <- X1+X2+X3+X4; n0 <- Y1+Y2+Y3+Y4
nD <- XD+YD
p1 <- X1/n1; p2 <- X2/n1; p3 <- X3/n1; p4 <- X4/n1;
q1 <- Y1/n0; q2 <- Y2/n0; q3 <- Y3/n0; q4 <- Y4/n0;
pD <- XD/nD       

res <- -((n0*p1*pD*(-((n0^2*p1*pD*(q1 - q1^2))/((1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)^2)) - (n0^2*p2*pD*q1*q2)/((1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2)^2) -
     (n0^2*p3*pD*q1*q3)/((1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3)^2) + (n0^2*p4*pD*q1*q4)/((1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)^2)))/
   ((1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)^2)) +
 (n0*p2*pD*((n0^2*p1*pD*q1*q2)/((1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)^2) + (n0^2*p2*pD*(q2 - q2^2))/((1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2)^2) -
    (n0^2*p3*pD*q2*q3)/((1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3)^2) + (n0^2*p4*pD*q2*q4)/((1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)^2)))/
  ((1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2)^2) +
 (n0*p3*pD*((n0^2*p1*pD*q1*q3)/((1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)^2) - (n0^2*p2*pD*q2*q3)/((1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2)^2) +
    (n0^2*p3*pD*(q3 - q3^2))/((1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3)^2) + (n0^2*p4*pD*q3*q4)/((1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)^2)))/
  ((1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3)^2) +
 nD*(pD - pD^2)*(-((n0*p1*pD*((n0*p1)/(nD*(1 - pD)) + (n0*p1*pD)/(nD*(1 - pD)^2)))/((1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)^2)) +
    (n0*p1)/(nD*(1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)) + (n0*p1*pD)/(nD*(1 - pD)^2*((n0*p1*pD)/(1 - pD) + n0*q1)) +
    (n0*p2*pD*((n0*p2)/(nD*(1 - pD)) + (n0*p2*pD)/(nD*(1 - pD)^2)))/((1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2)^2) -
    (n0*p2)/(nD*(1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2)) - (n0*p2*pD)/(nD*(1 - pD)^2*((n0*p2*pD)/(1 - pD) + n0*q2)) +
    (n0*p3*pD*((n0*p3)/(nD*(1 - pD)) + (n0*p3*pD)/(nD*(1 - pD)^2)))/((1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3)^2) -
    (n0*p3)/(nD*(1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3)) - (n0*p3*pD)/(nD*(1 - pD)^2*((n0*p3*pD)/(1 - pD) + n0*q3)) -
    (n0*p4*pD*((n0*p4)/(nD*(1 - pD)) + (n0*p4*pD)/(nD*(1 - pD)^2)))/((1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)^2) +
    (n0*p4)/(nD*(1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)) + (n0*p4*pD)/(nD*(1 - pD)^2*((n0*p4*pD)/(1 - pD) + n0*q4)))^2 -
 (n0*p4*pD*((n0^2*p1*pD*q1*q4)/((1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)^2) - (n0^2*p2*pD*q2*q4)/((1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2)^2) -
    (n0^2*p3*pD*q3*q4)/((1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3)^2) - (n0^2*p4*pD*(q4 - q4^2))/((1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)^2)))/
  ((1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)^2) + (-((n0^2*p1*pD^2)/(n1*(1 - pD)^2*((n0*p1*pD)/(1 - pD) + n0*q1)^2)) +
   (n0*pD)/(n1*(1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)))*(n1*(p1 - p1^2)*(-((n0^2*p1*pD^2)/(n1*(1 - pD)^2*((n0*p1*pD)/(1 - pD) + n0*q1)^2)) +
     (n0*pD)/(n1*(1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1))) - n1*p1^2*((n0^2*p2*pD^2)/(n1*(1 - pD)^2*((n0*p2*pD)/(1 - pD) + n0*q2)^2) -
     (n0*pD)/(n1*(1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2))) - n1*p1*p3*((n0^2*p3*pD^2)/(n1*(1 - pD)^2*((n0*p3*pD)/(1 - pD) + n0*q3)^2) -
     (n0*pD)/(n1*(1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3))) - n1*p1*p4*(-((n0^2*p4*pD^2)/(n1*(1 - pD)^2*((n0*p4*pD)/(1 - pD) + n0*q4)^2)) +
     (n0*pD)/(n1*(1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)))) + ((n0^2*p2*pD^2)/(n1*(1 - pD)^2*((n0*p2*pD)/(1 - pD) + n0*q2)^2) -
   (n0*pD)/(n1*(1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2)))*
  (-(n1*p1^2*(-((n0^2*p1*pD^2)/(n1*(1 - pD)^2*((n0*p1*pD)/(1 - pD) + n0*q1)^2)) + (n0*pD)/(n1*(1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)))) +
   n1*(p1 - p1^2)*((n0^2*p2*pD^2)/(n1*(1 - pD)^2*((n0*p2*pD)/(1 - pD) + n0*q2)^2) - (n0*pD)/(n1*(1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2))) -
   n1*p1*p3*((n0^2*p3*pD^2)/(n1*(1 - pD)^2*((n0*p3*pD)/(1 - pD) + n0*q3)^2) - (n0*pD)/(n1*(1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3))) -
   n1*p1*p4*(-((n0^2*p4*pD^2)/(n1*(1 - pD)^2*((n0*p4*pD)/(1 - pD) + n0*q4)^2)) + (n0*pD)/(n1*(1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)))) +
 ((n0^2*p3*pD^2)/(n1*(1 - pD)^2*((n0*p3*pD)/(1 - pD) + n0*q3)^2) - (n0*pD)/(n1*(1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3)))*
  (-(n1*p1*p3*(-((n0^2*p1*pD^2)/(n1*(1 - pD)^2*((n0*p1*pD)/(1 - pD) + n0*q1)^2)) + (n0*pD)/(n1*(1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)))) -
   n1*p1*p3*((n0^2*p2*pD^2)/(n1*(1 - pD)^2*((n0*p2*pD)/(1 - pD) + n0*q2)^2) - (n0*pD)/(n1*(1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2))) +
   n1*(p3 - p3^2)*((n0^2*p3*pD^2)/(n1*(1 - pD)^2*((n0*p3*pD)/(1 - pD) + n0*q3)^2) - (n0*pD)/(n1*(1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3))) -
   n1*p3*p4*(-((n0^2*p4*pD^2)/(n1*(1 - pD)^2*((n0*p4*pD)/(1 - pD) + n0*q4)^2)) + (n0*pD)/(n1*(1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)))) +
 (-((n0^2*p4*pD^2)/(n1*(1 - pD)^2*((n0*p4*pD)/(1 - pD) + n0*q4)^2)) + (n0*pD)/(n1*(1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4)))*
  (-(n1*p1*p4*(-((n0^2*p1*pD^2)/(n1*(1 - pD)^2*((n0*p1*pD)/(1 - pD) + n0*q1)^2)) + (n0*pD)/(n1*(1 - pD)*((n0*p1*pD)/(1 - pD) + n0*q1)))) -
   n1*p1*p4*((n0^2*p2*pD^2)/(n1*(1 - pD)^2*((n0*p2*pD)/(1 - pD) + n0*q2)^2) - (n0*pD)/(n1*(1 - pD)*((n0*p2*pD)/(1 - pD) + n0*q2))) -
   n1*p3*p4*((n0^2*p3*pD^2)/(n1*(1 - pD)^2*((n0*p3*pD)/(1 - pD) + n0*q3)^2) - (n0*pD)/(n1*(1 - pD)*((n0*p3*pD)/(1 - pD) + n0*q3))) +
   n1*(p4 - p4^2)*(-((n0^2*p4*pD^2)/(n1*(1 - pD)^2*((n0*p4*pD)/(1 - pD) + n0*q4)^2)) + (n0*pD)/(n1*(1 - pD)*((n0*p4*pD)/(1 - pD) + n0*q4))))
return(res)
}

Try the clinUtiDNA package in your browser

Any scripts or data that you put into this service are public.

clinUtiDNA documentation built on May 2, 2019, 9:27 a.m.