どのようにしてテストすることができ


8

2つの異なるモデルから計算されたパラメーターの数百の推定値があり、これらのパラメーターの分散が異なるかどうかを知りたいです。

これらのパラメーターの分散を比較する簡単なテストは何ですか?(簡単な意味、最小限の仮定)。


分散(最初の行で主張されている)または平均(3行目に示されている)を比較していますか?
whuber

@whuber混乱していた。質問を明確にしました。
阿部

@阿部「平均」と「分散」が逆転したようですが、まだ矛盾があります!(多分、平均の分散を比較したい場合を除きます。)「変数」とはどういう意味ですか:平均またはそれらの基礎となる基礎となる値?
whuber

@whuber申し訳ありませんが、それは良いですか?
阿部

@阿部新しいタイトルは大いに役立ちます。しかし、明確にするために:シグマ2乗は、平均または平均が基づいている基になる変数の分散ですか?
whuber

回答:


7

Wilcoxは分散を比較するために、パーセンタイルブートストラップ法を提案しています。「ロバスト推定と仮説検定の紹介」の5.5.1章を参照してください。これは、Rのwrsパッケージcomvar2から入手できます。

edit異なる値に対して両側からトリミングするブートストラップの違いの量を見つけるには、Wilcoxによって提案されているように、モンテカルロ研究を実行します。私はここMatlabですばやく汚れたものを持っています(投げられた靴からアヒル):α

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');

私はかなり役に立たないプロットを取得します: ここに画像の説明を入力してください

l+0.5=exp5.18α0.94n0.067α

218lnlnl599α/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

@shabbychef私をこの方向に向けてくれてありがとう。ダウンロードしてセクションの章を読み、計算するのに約5分しかかかりませんでした。非常に感謝していますが、他の方法が提案されることを期待して、あなたの答えを受け入れるつもりです-これはかなり制限されているためです(アルファ= 0.05でのテストのみであり、現在のケース)
阿部

@shabbychef私はすでに+1しましたが、Rパッケージでは非常に不運でした-OS Xビルドには前述の関数が含まれていません:(
chl

@chl AFAIKパッケージは、www-rcf.usc.edu /〜rwilcox / Rallfun
カラカル

α0.05luα

α=0.05α
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.