Önemli bir sonuç elde edilinceye kadar veri toplama neden Tip I hata oranını arttırıyor?


60

Önemli bir sonuç (örneğin, ) elde edilinceye (örneğin, p-hack) neden Tip I hata oranını kadar neden veri topladığımı merak ediyordum.p<.05

RBu fenomenin bir gösterimini de çok takdir ediyorum .


6
Muhtemelen "p-hack" demek, çünkü "harking", "Sonuçların Bilinen Sonrası Hipotezleme" anlamına gelir ve bununla ilgili bir günah olarak kabul edilebilse de, sormak istediğin gibi değil.
whuber

2
Bir kez daha, xkcd resimlerle güzel bir soruya cevap veriyor. xkcd.com/882
Jason,

7
@Jason Bağlantınıza katılmıyorum; Bu, kümülatif veri toplama hakkında konuşmuyor. Aynı şey hakkında kümülatif veri toplamanın ve tüm verileri kullanarak bile değerini hesaplamanız gerçeği yanlıştır, bu xkcd'deki durumdan çok daha önemsizdir. p
JiK

1
@JiK, adil arama. "Sevdiğimiz bir sonucu elde edene kadar denemeye devam et" yönüne odaklandım, ancak kesinlikle haklısınız, eldeki soruda çok daha fazlası var.
Jason,

@whuber ve user163778, bu konudaki pratik olarak aynı "A / B (ardışık) testi" durumuyla ilgili olarak tartışıldığı gibi çok benzer yanıtlar verdi: stats.stackexchange.com/questions/244646/… Orada, Wise Error Hatası tekrarlanan testlerde p-değeri ayarlama oranları ve gerekliliği. Aslında bu soru tekrarlanan bir test sorunu olarak görülebilir!
tomka

Yanıtlar:


87

Sorun şu ki, testi geçmek için kendinize çok fazla şans veriyorsunuz. Bu, bu iletişim kutusunun sadece fantezi bir versiyonudur:

Akşam yemeğini kimin ödediğini görmek için seni çeviririm.

Tamam, ben kafa çağırırım.

Rats, kazandın. Üçte iki en iyi?


Bunu daha iyi anlamak için , bu ardışık prosedürün basitleştirilmiş ancak gerçekçi bir modelini düşünün . Belirli sayıda gözlemden oluşan bir "deneme çalıştırması" ile başlayacağınızı, ancak daha düşük bir p değeri elde etmek için daha uzun süre deney yapmaya devam edeceğinizi varsayalım . Boş hipotez, her bir gözlem (bağımsız olarak) standart bir Normal dağılımdan . Alternatif olarak, bağımsız bir ortalama olmayan bir birim varyans normal dağılımından bağımsız olarak gelir. Test istatistiği, tüm gözlemlerin ortalaması olacak; , standart hatalarına bölünmüş, . İki taraflı bir test için, kritik değerlerX i X i n ˉ X 1 / 0.05XiXinX¯ 0.0250.975Zα=±1.961/n0.025Standart Normal dağılımın ve yüzde puanları, yaklaşık.0.975Zα=±1.96

Bu iyi bir test - sabit örneklem büyüklüğü ile tek bir deney için . Bu tam bir sahiptir ne olursa olsun, boş varsayımı reddetme şansı olabilir.% 5 nn5%n

Bunu cebirsel olarak tüm değerlerinin toplamına dayanan eşdeğer bir sınamaya dönüştürelim.S , n = x 1 + x 2 + + X , n = n ˉ x .n

Sn=X1+X2++Xn=nX¯.

Böylece, veriler ne zaman "önemli"

|Zα||X¯1/n|=|Snn/n|=|Sn|/n;

yani,

(1)|Zα|n|Sn|.

Eğer akıllıysak, çok büyüdükçe ve veriler kritik bölgeye girmediğinde, kayıplarımızı azaltıp vazgeçeceğiz .n

Bu rastgele bir yürüyüş . Formül , rastgele yürüyüşün etrafına kavisli bir parabolik "çit" veya bariyer oluşturmaya : rastgele yürüyüşün herhangi bir noktası çite çarparsa, sonuç "önemli" olur .Sn(1)(n,Sn)

Yeterince uzun süre beklersek , bir noktada sonucun önemli görünmesi çok muhtemeldir , rastgele yürüyüşlerin bir özelliğidir .

İşte örnek limitine kadar 20 bağımsız simülasyon . Hepsi numunede test etmeye başlar , bu noktada her noktanın formül e göre çizilen engellerin dışında olup olmadığını kontrol ederiz . İstatistiksel testin ilk önce "önemli" olduğu noktadan, simüle edilen veriler kırmızı renkle gösterilmiştir.n=5000n=30(1)

şekil

Neler olup bittiğini görebilirsiniz: rastgele yürüyüş arttıkça yukarı ve aşağı hareket ediyor . Engeller yaklaşık olarak aynı oranda dağılıyor - ancak rastgele yürümeyi önlemek için her zaman yeterince hızlı değil.n

Bu simülasyonların% 20'sinde "önemli" bir fark bulundu - genellikle oldukça erken - her birinde boş hipotez kesinlikle doğru olsa bile! Bu türden daha fazla simülasyon çalıştırmak, gerçek test boyutunun, in öngörülen değeri yerine yakın olduğunu gösterir : yani, örneklem boyutuna kadar "önem" aramaya istekli size verir boş doğrudur bile null adlı reddetme şansı.25%α=5%500025%

Dört "önemli" durumun hepsinde, test devam ettikçe, verilerin bazı noktalarda önemli görünmeyi bıraktığına dikkat edin. Gerçek hayatta, erken duran bir deneyci, bu tür "geri dönüşleri" gözlemleme şansını kaybediyor. İsteğe bağlı durma yoluyla bu seçicilik sonuçları önyargılı hale getirir.

Dürüst olmak gerekirse, sıralı testlerde, engeller çizgilerdir. Burada gösterilen kavisli engellerden daha hızlı yayıldılar.

library(data.table)
library(ggplot2)

alpha <- 0.05   # Test size
n.sim <- 20     # Number of simulated experiments
n.buffer <- 5e3 # Maximum experiment length
i.min <- 30     # Initial number of observations
#
# Generate data.
#
set.seed(17)
X <- data.table(
  n = rep(0:n.buffer, n.sim),
  Iteration = rep(1:n.sim, each=n.buffer+1),
  X = rnorm((1+n.buffer)*n.sim)
)
#
# Perform the testing.
#
Z.alpha <- -qnorm(alpha/2)
X[, Z := Z.alpha * sqrt(n)]
X[, S := c(0, cumsum(X))[-(n.buffer+1)], by=Iteration]
X[, Trigger := abs(S) >= Z & n >= i.min]
X[, Significant := cumsum(Trigger) > 0, by=Iteration]
#
# Plot the results.
#
ggplot(X, aes(n, S, group=Iteration)) +
  geom_path(aes(n,Z)) + geom_path(aes(n,-Z)) +
  geom_point(aes(color=!Significant), size=1/2) +
  facet_wrap(~ Iteration)

12
+1. Belirli bir rastgele yürüyüş, sonunda olasılık 1 olan engelleri aşar mı? adımdan sonra beklenen mesafenin olduğunu biliyorum ve şimdi orantılılık sabiti olan olduğunu gördüm . Ama ne yapacağımdan emin değilim. nO(n)2/π
amip diyor Reinstate Monica

10
@ amoeba Bu atlatmak için elimden gelenin en iyisini yaptım :-). Cevabı hızlı bir şekilde hesaplayabilseydim (ya da hazırlıksız bilseydim), bunu yayınlardım. Ne yazık ki şu an analitik olarak ele almak için çok meşgulüm. Yaptığım en uzun simülasyon , ile kadar bakan 1000 yineleme idi . "Önemli" sonuçların oranı 4'e yakın bir seviyede sabitlenmiş görünüyor . n=5,000,000α=0.051/4
whuber

4
sınırına ulaşma olasılığı ile ilgili soru ilginçtir. Einstein'ın Brownian hareketi teorisinin bir difüzyon denklemi ile ilişkilendirerek ilginç bir açı olabileceğini hayal ediyorum. Bu sınırdaki dağıtım fonksiyonunun değerinin yarısına eşit bir "partikül kaybı" ve oranıyla yayılan bir dağıtım fonksiyonumuz var geri gider). Bu dağılım fonksiyonu yayıldıkça ve inceldikçe, “kayıp” azalır. Bunun etkili bir şekilde sınır yaratacağını, yani bu 1 / 4'ü olacağını düşünüyorum. α=0.05n
Sextus Empiricus,

6
Neredeyse kesinlikle bir noktada almanızın sezgisel nedeni : ve . ilk sonra -değeri çalışmaların bağımsız oldukça fazla olan ilk sonra-değeri denemeleri. Böylece sonsuz sayıda "neredeyse" bağımsız -değerine sahip olacaksınız , bu nedenle bunlardan birinin olması garanti edilmektedir . Elbette, gerçek yakınsama, bu argümanın söylediğinden çok daha hızlı. (Ve eğer , veya ... 'ı n 1 = 10 n k + 1 = 10 n k p n k + 1 p n k p < 0.05 10 n k A ( n k ) B B ( n k )p<0.05n1=10nk+1=10nkpnk+1pnkp<0.0510nkA(nk)BB(nk)
deneyebilirsiniz

10
@CL. İtirazınızı birkaç yıl önce tahmin etmiştim : 17 benim tohumum. Aslında, erken (çok daha uzun) çalışmalarda ben sürekli başlamıştı büyüktür % 20 daha büyüktür önem oranları. Son görüntüyü oluşturmak için tohumu 17'ye ayarladım ve etkinin o kadar dramatik olmadığını hayal kırıklığına uğrattım. C'est la vie. İlgili bir yayın (amacınızı gösteren) stats.stackexchange.com/a/38067/919 adresindedir .
whuber

18

Hipotez testinde yeni olan kişiler, ap değeri 0,05'in altına düştüğünde, daha fazla katılımcı eklemek sadece p değerini daha da azaltacağını düşünme eğilimindedir. Ancak bu doğru değil. Boş hipotez altında, ap değeri 0 ile 1 arasında eşit olarak dağıtılır ve bu aralıkta bir miktar etrafa sıçrayabilir.

R'deki bazı verileri simüle ettim (R becerilerim oldukça basit). Bu simülasyonda, her biri rasgele seçilmiş bir grup üyeliğine (0 veya 1) ve her biri rasgele seçilmiş bir sonuç ölçüsüne sahip ~ N (0,1) olan 5 veri puanı toplarım. Katılımcı 6'dan başlayarak, her yinelemede bir t testi yapıyorum.

for (i in 6:150) {
  df[i,1] = round(runif(1))
  df[i,2] = rnorm(1)
  p = t.test(df[ , 2] ~ df[ , 1], data = df)$p.value
  df[i,3] = p
}

P değerleri bu şekildedir. Örnek büyüklüğü 70-75 civarındayken önemli sonuçlar bulduğuma dikkat edin. Eğer orada durursam, bulgularımın önemli olduğuna inanmaya başlıyorum, çünkü p değerlerimin daha büyük bir örnekle geri yükseldiğini kaçırdım (bu, gerçek verilerle başıma geldi). Her iki popülasyonun da ortalama 0 olduğunu bildiğim için, bu yanlış bir pozitif olmalı. P <.05 olana kadar veri ekleme ile ilgili sorun budur. Yeterli sayıda test eklerseniz, p sonunda .05 eşiğini geçecektir ve önemli bir etkinin herhangi bir veri kümesi olduğunu görebilirsiniz.

görüntü tanımını buraya girin


1
Teşekkürler ama Rkodunuz hiç çalışmıyor.
Reza,

3
@Reza dfönce oluşturmanız gerekir (tercihen son boyutunda). Kod satır 6'da yazmaya başladığından beri (cevap metniyle uyuşan) ima, df zaten önceden doldurulmuş 5 satırla zaten var demektir. Belki bunun gibi bir şey amaçlanmıştır: n150<-vector("numeric",150); df<-data.frame(gp=n150,val=n150,pval=n150); init<-1:5; df[init,1]<-c(0,1,0,1,0); df[init,2]<-rnorm(5)(sonra yukarıdaki kodu çalıştırın) sonra belki: plot(df$pv[6:150])
Glen_b 27:17

@ user263778 çok odaklı, yararlı ve uygun bir cevap odaklı. Fakat p-değerini yorumlama konusunda çok fazla kafa karışıklığı var - dans güzelliği.
Subhash C. Davar

@ user163778 - her şeyi de başlatmak için gereken kodu eklemelisiniz
Dason

17

Bu cevap sadece nihayetinde “anlamlı” bir sonuç alma olasılığı ve bu olaya zamanın @ whuber'in modeli altında dağıtılması ile ilgilidir.

@Whuber modelinde olduğu gibi, , gözlemleri toplandıktan sonra test istatistiğinin değerini göstersin ve gözlemlerinin standart normal olduğunu varsayalım. . O zaman öyle ki öyle ki sürekli bir standart Brownian hareketi gibi davranır, anı görmezden gelirsek ayrık zamanlı bir sürecimiz olduğu gerçeği (aşağıda soldaki grafik).S(t)=X1+X2++XttX1,X2,

(1)S(t+h)|S(t)=s0N(s0,h),
S(t)

Let ilk geçiş zamanı belirtmek , zamana bağlı engeller boyunca (testi önemli döner önce gerekli gözlem sayısı).TS(t)±zα/2t

Dönüştürülmüş işlemi göz önünde ölçekleme ile elde edilen süresi de standart sapma ile ve yeni zaman ölçeği izin vererek bu şekilde (1) ve (2) 'den, normalde ve Y(τ)S(t)tτ=lnt

(2)Y(τ)=S(t(τ))t(τ)=eτ/2S(eτ).
Y(τ+δ)
E(Y(τ+δ)|Y(τ)=y0)=E(e(τ+δ)/2S(eτ+δ)|S(eτ)=y0eτ/2)(3)=y0eδ/2
Var(Y(τ+δ)|Y(τ)=y0)=Var(e(τ+δ)/2S(eτ+δ)|S(eτ)=y0eτ/2)(4)=1eδ,
yani, , 1 sabit bir varyans ve geri dönüş süresi 2 (sıfırdan sağa olan sıfır-ortalama Ornstein-Uhlenbeck (OU) işlemidir.Y(τ)

görüntü tanımını buraya girin

Dönüştürülen model için, engeller eşit zamandan bağımsız sabitler haline gelir . Daha sonra ( Nobile ve diğerleri, 1985 ; Ricciardi ve Sato, 1988 ), bu engellerin karşısındaki OU işleminin ilk geçiş zamanı in katlanarak yaklaşık olarak üssel olarak bazı parametreler ile dağıtıldığı ( 'deki engellere bağlı olarak ) ( için aşağıda tahmin edilmiştir ). içinde boyutunda fazladan bir nokta kütlesi de vardır . "Reddetme"±zα/2TY(τ)λ±zα/2λ^=0.125α=0.05ατ=0H0sonuçta olasılık 1 olur. Dolayısıyla, ("anlamlı" bir sonuç almadan önce toplanması gereken gözlemlerin sayısı), yaklaşık olarak beklenen bir log üstel dağılımını izler Bu nedenle, yalnızca olması durumunda (yeterli bir süre için) sınırlı bir beklentisi vardır. önemi büyük seviyeleri ).T=eTTλ>1α

(5)ET1+(1α)0eτλeλτdτ.
Tλ>1α

Yukarıdakiler , gerçek model için ayrık olduğu ve gerçek sürecin sürekli-zamandan farklı olduğu gerçeğini görmezden gelir . Bu nedenle, yukarıdaki model engel geçildikten olasılığını tahminini fazla (ve hafife ) sürekli-zaman örnek yol sadece geçici bariyerini geçebilir, çünkü içinde-iki bitişik ayrık zaman noktaları ve . Ama böyle olaylar geniş için önemsiz olasılığına sahip olmalıdır . E T t t + 1 tTETtt+1t

Aşağıdaki şekil, log-log ölçeğindeki Kaplan-Meier tahminini ve üstel sürekli zaman yaklaşımı (kırmızı çizgi) için hayatta kalma eğrisini göstermektedir.P(T>t)

görüntü tanımını buraya girin

R kodu:

# Fig 1
par(mfrow=c(1,2),mar=c(4,4,.5,.5))
set.seed(16)
n <- 20
npoints <- n*100 + 1
t <- seq(1,n,len=npoints)
subset <- 1:n*100-99
deltat <- c(1,diff(t))
z <- qnorm(.975)
s <- cumsum(rnorm(npoints,sd=sqrt(deltat)))
plot(t,s,type="l",ylim=c(-1,1)*z*sqrt(n),ylab="S(t)",col="grey")
points(t[subset],s[subset],pch="+")
curve(sqrt(t)*z,xname="t",add=TRUE)
curve(-sqrt(t)*z,xname="t",add=TRUE)
tau <- log(t)
y <- s/sqrt(t)
plot(tau,y,type="l",ylim=c(-2.5,2.5),col="grey",xlab=expression(tau),ylab=expression(Y(tau)))
points(tau[subset],y[subset],pch="+")
abline(h=c(-z,z))

# Fig 2
nmax <- 1e+3
nsim <- 1e+5
alpha <- .05
t <- numeric(nsim)
n <- 1:nmax
for (i in 1:nsim) {
  s <- cumsum(rnorm(nmax))
  t[i] <- which(abs(s) > qnorm(1-alpha/2)*sqrt(n))[1]
}
delta <- ifelse(is.na(t),0,1)
t[delta==0] <- nmax + 1
library(survival)
par(mfrow=c(1,1),mar=c(4,4,.5,.5))
plot(survfit(Surv(t,delta)~1),log="xy",xlab="t",ylab="P(T>t)",conf.int=FALSE)
curve((1-alpha)*exp(-.125*(log(x))),add=TRUE,col="red",from=1,to=nmax)

Teşekkürler! Bu sonuçlar için herhangi bir (standart) referansınız var mı? Örneğin, Y işlemi neden bir Ornstein-Uhlenbeck'tir ve geçiş süresi sonucunu nerede bulabiliriz?
Grassie

1
Bu dönüşümü başka hiçbir yerde görmedim, ancak (1) ve (2) 'den kolayca takip eden (3) ve (4) ve normalliklerin OU sürecini tamamen nitelendirdiğine inanıyorum. Google alimi, OU süreci için yaklaşık ilk geçiş süresi dağılımının katlanarak artması üzerine çok fazla sonuç döndürür. Ancak , bu durumda ( nin (sürekli zaman yaklaşımı içinde) tam olarak üssel olarak dağıldığına ( ekstra nokta kütlesi hariç) tam anlamıyla dağıldığına inanıyorum, çünkü işlemin durağan dağılımından geliyor . Tτ=0Y(0)
Jarle Tufto


@Grassie Aslında, ezberliğe dayanan argümanım hatalıydı. Sınırlardan uzak gezilerin süreleri üssel olarak dağılmamaktadır. Bu nedenle, istatistik.stackexchange.com/questions/298828/… 'deki aynı argümana dayanarak , durağan dağılımdan gelse de, ilk geçiş zamanı tam olarak üssel olarak dağılmamıştır. Y(0)
Jarle Tufto

5

Yukarıdaki tartışmanın, çoklukluluğun, verdiğiniz şanstan daha aşırı olma ihtimalinden kaynaklandığı, varolma etkisi yaratma şansından değil, sık sık dünya görüşü için olduğu söylenmelidir. Sorunun kök nedeni, p-değerleri ve tip I hatalarının, zamanın geri-geri-bilgi akış koşullandırma sistemini kullanmasıdır; bu, “buraya nasıl geldiğinizi” ve bunun yerine ne olabileceğini önemli kılar . Öte yandan, Bayes Paradigması, veri üzerindeki değil, parametrenin kendisi üzerindeki bir etki hakkında şüpheciliği kodlamaktadır. Bu, her bir arka olasılığın, 5 dakika önce bir etkinin başka bir arka olasılığını hesaplayıp hesaplamamasıyla aynı şekilde yorumlanmasını sağlar. Daha fazla ayrıntı ve basit bir simülasyon http://www.fharrell.com/2017/10/continuous-learning-from-data-no adresinde bulunabilir .


1
Dindar bir Bayesian olan Dr B'nin önderlik ettiği bir laboratuarı hayal edelim. Laboratuvar sosyal prime etmeyi inceliyor ve her seferinde Bayes faktörü BF> 10 tarafından desteklenen çeşitli prime etmenin etkilerini gösteren sabit bir kağıt akışı üretti. Hiçbir zaman sıralı test yapmazlarsa, oldukça ikna edici görünüyor. Fakat şunu söylemeliyim ki, her zaman sıralı testler yaptıklarını ve BF> 10 elde edene kadar hazırlama denemeleri lehine yeni konular almaya devam edeceğim . O zaman açıkça bütün bu çalışma bedeni değersizdir. Sıralı test + seçim yapmaları, BF'nin p-değerlerine dayanıp dayanmadığına bakılmaksızın büyük bir fark yaratıyor.
amip diyor Reinstate Monica

1
Bayes 'faktörlerini kullanmıyorum. Fakat arka olasılıkları kullanmışlar ve her bir deneyi olumlu bir etkinin arka olasılığı kadar yapmış olsaydı, bu olasılıklarda kesinlikle yanlış bir şey olmazdı. Blog makalemin başındaki alıntıya bakın - yukarıdaki cevabımdaki bağlantıya bakın. Hazırlama etkisine ilişkin inanç derecesi verilerden ve önceki inançtan gelir. Siz (benim gibi), bu tür emici etkilerden çok şüpheleniyorsanız, posterior olasılıkları hesaplarken biraz şüpheci kullanmalısınız. Bu kadar. 0.95
Frank Harrell,

1
Blog postanızı okudum, teklifi fark ettim ve benzer bir makaleye baktım ( İsteğe bağlı durma: Bayezliler için sorun değil ) yorumlarda başka birinin yanıtla bağlantısı olduğu. Hala anlamadım. Eğer "null" (mevcut olmayan hazırlama etkileri) doğruysa, eğer B B yeterince uzun süre numune almaya istekliyse , denemeyi her çalıştırdığında posterior olasılığı> 0,95 elde edebilecektir (tıpkı Dr F'nin yapabildiği gibi) her seferinde p <0.05 olsun). Bu "kesinlikle yanlış bir şey" değilse, ne olduğunu bilmiyorum.
amip diyor Reinstate Monica

2
Ben bu "daha büyük noktayı" tartışıyorum. Bunun doğru olduğunu sanmıyorum. Yinelemeye devam ettiğimde, sıfır etkisinin boşluğu altında ve herhangi bir önceden verilen ile (diyelim ki bazı geniş sürekli öncesi sıfırda ortalanalım diyelim), tekrarlanan örnekleme her zaman er ya da geç,> sıfırın üzerinde yoğunlaşan> 0.98 arka olasılık verecektir . Bu gerçekleşene kadar örnekleme yapan bir kişi (yani bu durma kuralını uygulayarak), her seferinde yanlış olacaktır . Bu kişinin sadece 0.02 yanlış olduğunu nasıl söylersin? Anlamadım Bu özel koşullar altında, hayır yapmayacak, her zaman yanlış olacak .
amip diyor Reinstate Monica,

2
Öyle olduğumu sanmıyorum. Benim en büyük noktam, sıralı testlerden muzdarip sıklıktaki prosedürleri aynı anda suçlamanın ve sıralı testlerden etkilenmeyen Bayesian prosedürlerini savunmanın haksız ve tutarsız olmasıdır. Demek istediğim (matematiksel bir gerçektir), her ikisinin de aynı şekilde etkilenmesidir; bu, sıralı testlerin Bayesian tip I hatasını% 100'e kadar arttırabileceği anlamına gelir. Tabii ki, prensip olarak, tip I hata oranlarıyla ilgilenmediğinizi söylerseniz, bunun önemi yoktur. Ancak o zaman sık yapılan işlemler de bunun için suçlanmamalıdır.
amip diyor Reinstate Monica

3

Bazı hipotezleri test etmek için , boyutunda bir örnek toplayan bir araştırmacı olduğunu . Uygun bir test istatistiğinin kritik değerini aşması durumunda reddeder . , , boyutunda başka bir örnek toplar ve testin birleştirilmiş örnek için reddetmesi halinde reddeder . Hala reddetmediği takdirde, bu şekilde, toplamda kadar devam eder .nx1θ=θ0tαcnx2(x1,x2)K

Bu problem zaten Kraliyet İstatistik Derneği Dergisi'nden P. Armitage, CK McPherson ve BC Rowe (1969) tarafından ele alınmaktadır . Seri A (132), 2, 235-244: "Veri Toplamada Tekrarlanan Önemlilik Testleri" .

Burada tartışılan bu konudaki Bayes bakış açısı, bu arada, Berger ve Wolpert (1988), "Olabilirlik İlkesi" , Bölüm 4.2'de tartışılmaktadır .

İşte Armitage ve arkadaşlarının sonuçlarının (aşağıdaki kod) kısmi bir kopyası, olduğunda önem seviyelerinin nasıl azaldığını ve aynı zamanda seviye kritik değerlerini geri yüklemek için olası düzeltme faktörlerini gösterir . Şebeke aramasının çalışması biraz zaman alır, uygulama oldukça etkin olmayabilir.αK>1α

Deneme sayısının bir fonksiyonu olarak standart reddetme kuralının büyüklüğüK

görüntü tanımını buraya girin

Farklı için kritik değerleri artırmanın bir fonksiyonu olarak boyutK

görüntü tanımını buraya girin

bir fonksiyonu olarak% 5 testi geri yüklemek için ayarlanmış kritik değerlerK

görüntü tanımını buraya girin

reps <- 50000

K <- c(1:5, seq(10,50,5), seq(60,100,10)) # the number of attempts a researcher gives herself
alpha <- 0.05
cv <- qnorm(1-alpha/2)

grid.scale.cv <- cv*seq(1,1.5,by=.01) # scaled critical values over which we check rejection rates
max.g <- length(grid.scale.cv)
results <- matrix(NA, nrow = length(K), ncol=max.g)

for (kk in 1:length(K)){
  g <- 1
  dev <- 0
  K.act <- K[kk]
  while (dev > -0.01 & g <= max.g){
    rej <- rep(NA,reps)
    for (i in 1:reps){
      k <- 1
      accept <- 1
      x <- rnorm(K.act)
      while(k <= K.act & accept==1){
        # each of our test statistics for "samples" of size n are N(0,1) under H0, so just scaling their sum by sqrt(k) gives another N(0,1) test statistic
        rej[i] <- abs(1/sqrt(k)*sum(x[1:k])) > grid.scale.cv[g] 
        accept <- accept - rej[i]
        k <- k+1
      }
    }
    rej.rate <- mean(rej)
    dev <- rej.rate-alpha
    results[kk,g] <- rej.rate
    g <- g+1
  }
}
plot(K,results[,1], type="l")
matplot(grid.scale.cv,t(results), type="l")
abline(h=0.05)

cv.a <- data.frame(K,adjusted.cv=grid.scale.cv[apply(abs(results-alpha),1,which.min)])
plot(K,cv.a$adjusted.cv, type="l")
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.