RosettaCodeData/Task/Permutation-test/Zkl/permutation-test.zkl

13 lines
494 B
Plaintext

fcn permutationTest(a,b){
ab := a.extend(b);
tObs := a.sum(0);
combs := Utils.Helpers.pickNFrom(a.len(),ab); // 92,378
under := combs.reduce('wrap(sum,perm){ sum+(perm.sum(0) <= tObs) },0);
100.0 * under / combs.len();
}
treatmentGroup := T(85, 88, 75, 66, 25, 29, 83, 39, 97);
controlGroup := T(68, 41, 10, 49, 16, 65, 32, 92, 28, 98);
under := permutationTest(treatmentGroup, controlGroup);
println("Under =%6.2f%%\nOver =%6.2f%%".fmt(under, 100.0 - under));