0001 function mix = mixFraction(sample1, sample2, fixed)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 if nargin <3
0019 fixed = [];
0020 end
0021
0022 sample1 = full(sample1);
0023 sample2 = full(sample2);
0024
0025 sample1(fixed, :) = zeros(length(fixed), size(sample1,2));
0026 sample2(fixed, :) = zeros(length(fixed), size(sample2,2));
0027
0028 m1 = median(sample1, 2);
0029 LPproblem = median(sample2, 2);
0030
0031 l1 = sample1 > m1*ones(1, size(sample1,2));
0032 eq1 = sample1 == m1*ones(1, size(sample1,2));
0033 l2 = sample2 > LPproblem*ones(1, size(sample1,2));
0034 eq2 = sample2 == LPproblem*ones(1, size(sample1,2));
0035
0036 eqtotal = eq1 | eq2;
0037
0038 mix = sum(sum((l1 == l2) & ~eqtotal))/(numel(l1)-sum(sum(eqtotal)));