この記事は、アイデアに基づいており、以前の出版物である統計的にロバストなデータ分析: 2つのサンプルのウィルコクソン検定で概説されている方法を拡張しています。これは単純ですが広く使用されているモデルです。より複雑な状況でも、ターゲットは2つのレベルで比較されることがよくあります。
2つの一般的な母集団の位置のパラメーターのシフトに関するモデルの分析は、分布のないマンホイットニーウィルコクソン(MWW)ランク手順の説明から始まります。ここでは、シフトの大きさの点と区間の推定値は次のとおりです。構築されました。さらに、スコア関数の使用に基づく分析方法について簡単に説明し、その助けを借りて、シフトパラメーターの大きさに関する帰無仮説もテストします。結論として、位置パラメーターのモデルは回帰問題として定式化され、その解により、シフトパラメーターの点と区間の推定値を作成することもできます。
この記事で説明されているすべてのメソッドは、R言語のアルゴリズムの形式で実装されたエンドツーエンドの例で示されています。
1.レッツと連続する二つの確率変数であり:及び確率変数の分布関数(CDF)及び密度(PDF)を示し、及び及びそれぞれ、確率変数の関数(CDF)及び密度(pdf)を示します。私たちは、それを言うと続く位置パラメータのモデルいくつかのパラメータの場合は、(場所モデル)を、持っています
パラメータは、確率変数の位置パラメータのシフトであり、たとえば、中央値または平均(平均が存在する場合)の差である可能性があります。提案されたモデルは、確率変数とのスケールのパラメーターが等しいことを前提としていることに注意してください。
2. , . – ( cdf pdf), – ( cdf pdf). – .
.
( ) , : .
3. , . – . , , . . .
> z <- c(12, 18, 11, 5, 11, 5, 11, 11)
> rank(z)
[1] 7.0 8.0 4.5 1.5 4.5 1.5 4.5 4.5
, .
-- (Mann-Whitney-Wilcoxon, MWW). – ,
,
, . , (, , ). , () p-value ( ).
4. -- , ( - (Hodges-Lehmann))
. – , , .
.
5. -- t- c .
> x <- round(rt(11, 5) * 10 + 42, 1)
> y <- round(rt(9, 5) * 10 + 50, 1)
> x
[1] 76.6 41.0 59.3 34.9 29.1 45.0 42.6 31.1 32.4 52.5 47.9
> y
[1] 58.3 47.2 40.1 45.8 62.0 58.7 64.8 48.1 49.5
> wilcox.test(y, x, exact = TRUE, conf.int = TRUE, conf.level = 0.95)
Wilcoxon rank sum exact test
data: y and x
W = 72, p-value = 0.09518
alternative hypothesis: true location shift is not equal to 0
95 percent confidence interval:
-1.0 18.4
sample estimates:
difference in location
10.4
: p-value , , . p-value «». exact = FALSE
correct = FALSE
( ) , . p-value .
> wilcox.test(y, x, exact = FALSE, correct = FALSE)
Wilcoxon rank sum test
data: y and x
W = 72, p-value = 0.08738
alternative hypothesis: true location shift is not equal to 0
6. , (score )
,, – , cdf . (Normal score function) , , . , normal score rankit, standard score z-score. normal score, score , score .
:
– score ,– . , :
, , , () .
, . , :
, , – . .
7. R p-value score ( Rfit
).
> x <- c(76.6, 41.0, 59.3, 34.9, 29.1, 45.0, 42.6, 31.1, 32.4, 52.5, 47.9)
> y <- c(58.3, 47.2, 40.1, 45.8, 62.0, 58.7, 64.8, 48.1, 49.5)
> # x y
> z = c(x, y)
> n1 = length(x)
> n2 = length(y)
> n = n1 + n2
> # score
> scores = Rfit::wscores
> # score z
> rs = rank(z)/(n + 1)
> asg = Rfit::getScores(scores, rs)
> # Sphi
> Sphi = sum(asg[(n1 + 1):n])
> # Sphi
> asc = Rfit::getScores(scores, 1:n/(n + 1))
> varphi = ((n1 * n2)/(n * (n - 1))) * sum(asc^2)
> # zphi p-value
> zphi = Sphi/sqrt(varphi)
> alternative = "two.sided"
> pvalue <-
+ switch(
+ alternative,
+ two.sided = 2 * (1 - pnorm(abs(zphi))),
+ less = pnorm(zphi),
+ greater = 1 - pnorm(zphi)
+ )
> #
> res <- list(Sphi = Sphi, statistic = zphi, p.value = pvalue)
> with(res, cat("statistic = ", statistic, ", p-value = ", p.value, "\n"))
statistic = 1.709409 , p-value = 0.08737528
, p-value p-value : .
8. C . ,– - .
– , . , . - . , score , - – .
R .
> z = c(x, y)
> ci <- c(rep(0, n1), rep(1, n2))
> fit <- Rfit::rfit(z ~ ci, scores = Rfit::wscores)
> coef(summary(fit))
Estimate Std. Error t.value p.value
(Intercept) 41.8 4.400895 9.498068 1.960951e-08
ci 10.4 5.720594 1.817993 8.574801e-02
, . , , , , t- :
> conf.level <- 0.95
> estse <- coef(summary(fit))[2, 1:2]
> alpha <- 1 - conf.level
> alternative = "two.sided"
> tcvs <- switch(
+ alternative,
+ two.sided = qt(1 - alpha / 2, n - 2) * c(-1, 1),
+ less = c(-Inf, qt(1 - alpha, n - 2)),
+ greater = c(qt(alpha, n - 2), Inf)
+ )
> conf.int <- estse[1] + tcvs * estse[2]
> cat(100 * conf.level, " percent confidence interval:\n", conf.int)
95 percent confidence interval:
-1.618522 22.41852
, .
( -- score ) . .