if (exist ("OCTAVE_VERSION", "builtin") > 0) pkg load statistics function rng(x) randn("seed", x) rand("seed", x) end end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Table 1: Independent rng(1); runs = 100; n = 110; d = 25; Cov_Matrix = diag(repmat(1, 1, d)); result_Cise = [0 0]; for index = 1:runs X = mvnrnd(repmat(0, 1, d), Cov_Matrix, n); beta = [3 1.5 0 0 2 0 2 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0]; Y = X*transpose(beta) + mvnrnd(0, 3^2, n); [fv, beta, st] = cise(Y, X, 2, 1, 'SIR'); result_Cise(1) = result_Cise(1) + length(intersect(find(st), [1 2 5 7 17])); result_Cise(2) = result_Cise(2) + length(intersect(find(st), [3 4 6 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25])); end; fprintf('Simulation number: %d\n', runs); fprintf('Correct : %d\n', result_Cise(1)/runs); fprintf('Incorrect: %d\n', result_Cise(2)/runs); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Table 1: Dependent rng(1); runs = 100; n = 110; d = 25; Cov_Matrix = diag(repmat(1,1,d)); result_Cise = [0 0]; cols = repmat(1:d,1,1); for i = 1:d Cov_Matrix(1:d,i) = 0.5.^(abs(i-cols)); end; for index = 1:runs X = mvnrnd(repmat(0,1,d),Cov_Matrix,n); beta = [3 1.5 0 0 2 0 2 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0]; Y = X*transpose(beta) + mvnrnd(0,3^2,n); [fv,beta,st] = cise(Y, X, 2, 1, 'SIR'); result_Cise(1) = result_Cise(1) + length(intersect(find(st), [1 2 5 7 17])); result_Cise(2) = result_Cise(2) + length(intersect(find(st), [3 4 6 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25])); end; fprintf('Simulation number: %d\n', runs); fprintf('Correct : %d\n', result_Cise(1)/runs); fprintf('Incorrect: %d\n', result_Cise(2)/runs); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Table 2: g1 rng(1); runs = 100; n = 40; d = 8; Cov_Matrix = diag(repmat(1, 1, d)); result_Cise = [0 0]; for index = 1:runs X = mvnrnd(repmat(0, 1, d), Cov_Matrix, n); Y = sin(pi*X(1:n, 1)) + mvnrnd(0, 0.3^2, n); [fv, beta, st] = cise(Y, X, 2, 1, 'SIR'); result_Cise(1) = result_Cise(1) + length(intersect(find(st), [1])); result_Cise(2) = result_Cise(2) + length(intersect(find(st), [2 3 4 5 6 7 8])); end; fprintf('Simulation number: %d\n', runs); fprintf('Correct : %d\n', result_Cise(1)/runs); fprintf('Incorrect: %d\n', result_Cise(2)/runs); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Table 2: g2 rng(1); runs = 100; n = 40; d = 8; Cov_Matrix = diag(repmat(1, 1, d)); result_Cise = [0 0]; for index = 1:runs X = mvnrnd(repmat(0, 1, d), Cov_Matrix, n); Y = sin((3/4)*pi*X(1:n, 1)) - 3*normcdf(-abs(X(1:n, 5)).^3) + mvnrnd(0, 0.3^2, n); [fv, beta, st] = cise(Y, X, 2, 1, 'SIR'); result_Cise(1) = result_Cise(1) + length(intersect(find(st), [1])); result_Cise(2) = result_Cise(2) + length(intersect(find(st), [2 3 4 5 6 7 8])); end; fprintf('Simulation number: %d\n', runs); fprintf('Correct : %d\n', result_Cise(1)/runs); fprintf('Incorrect: %d\n', result_Cise(2)/runs);