Pour comparer les variances , Wilcox suggère une méthode de bootstrap centile. Voir le chapitre 5.5.1 de «Introduction aux tests robustes d'estimation et d'hypothèse» . Ceci est disponible à comvar2
partir du package wrs dans R.
modifier : pour trouver la quantité de différences de bootstrap à couper de chaque côté pour différentes valeurs deα, on effectuerait une étude de Monte Carlo, comme suggéré par Wilcox. J'en ai un rapide et sale ici à Matlab (canard de chaussures jetées):
randn('state',0); %to make the results replicable.
alphas = [0.001,0.005,0.01,0.025,0.05,0.10,0.15,0.20,0.25,0.333];
nreps = 4096;
nsizes = round(2.^ (4:0.5:9));
nboots = 599;
cutls = nan(numel(nsizes),numel(alphas));
for ii=1:numel(nsizes)
n = nsizes(ii);
imbalance = nan(nreps,1);
for jj=1:nreps
x1 = randn(n,1);x2 = randn(n,1);
%make bootstrap samples;
x1b = x1(ceil(n * rand(n,nboots)));
x2b = x2(ceil(n * rand(n,nboots)));
%compute stdevs
sig1 = std(x1b,1);sig2 = std(x2b,1);
%compute difference in stdevs
Dvar = (sig1.^2 - sig2.^2);
%compute the minimum of {the # < 0} and {the # > 0}
%in (1-alpha) of the cases you want this minimum to match
%your l number; then let u = 599 - l + 1
imbalance(jj,1) = min(sum(Dvar < 0),sum(Dvar > 0));
end
imbalance = sort(imbalance);
cutls(ii,:) = interp1(linspace(0,1,numel(imbalance)),imbalance(:)',alphas,'nearest');
end
%plot them;
lh = loglog(nsizes(:),cutls + 1);
legend(lh,arrayfun(@(x)(sprintf('alpha = %g',x)),alphas,'UniformOutput',false))
ylabel('l + 1');
xlabel('sample size, n_m');
Je reçois l'intrigue plutôt inutile:
Un peu de piratage indique qu'un modèle de la forme l + 0,5 = exp5.18α0,94n0,067correspond assez bien à mes simulations de Monte-Carlo, mais elles ne donnent pas les mêmes résultats que Wilcox cite dans son livre. Vous pourriez être mieux servi en exécutant vous-même ces expériences à votre choixα.
edit J'ai relancé cette expérience, en utilisant de nombreuses répliques (218) par taille d'échantillon. Voici un tableau des valeurs empiriques del. La première ligne est un NaN, puis l'alpha (taux de type I). Ensuite, la première colonne est la taille des échantillons,n, puis les valeurs empiriques de l. (Je m'attendrais à ce quen → ∞ nous aurions l → 599 α / 2)
NaN,0.001,0.005,0.01,0.025,0.05,0.1,0.15,0.2,0.25,0.333
16,0,0,1,4,9,22,35,49,64,88
23,0,0,1,4,10,23,37,51,66,91
32,0,0,1,4,10,24,38,52,67,92
45,0,0,1,5,11,25,39,54,69,94
64,0,0,2,5,12,26,41,55,70,95
91,0,1,2,6,13,27,42,56,71,96
128,0,1,2,6,13,28,42,58,72,97
181,0,1,2,6,13,28,43,58,73,98
256,0,1,2,6,14,28,43,58,73,98
362,0,1,2,7,14,29,44,59,74,99
512,0,1,2,7,14,29,44,59,74,99