data Y;
input a b c d;
XPL_FISH = cdf('hyper', a, a+b+c+d, a+b, a+c);
XPR_FISH = 1-cdf('hyper', a-1, a+b+c+d, a+b, a+c);
if a/(a+b)<c/(c+d) then do;
p = pdf('hyper', a, a+b+c+d, a+b, a+c);
do e=c to 0 by -1;
p1 = pdf('hyper', e, a+b+c+d, c+d, a+c);
if p1<p then leave;
end;
XP2_FISH = XPL_FISH + cdf('hyper', e, a+b+c+d, c+d, a+c);
end;
else do;
p = pdf('hyper', c, a+b+c+d, c+d, a+c);
do e=a to 0 by -1;
p1 = pdf('hyper', e, a+b+c+d, a+b, a+c);
if p1<p then leave;
end;
XP2_FISH = XPR_FISH + cdf('hyper', e, a+b+c+d, a+b, a+c);
end;
cards;
53 430 15 176
;
run;
|