Duyarlılık hakkında konuşalım ( ifade edeceğiz ), özgüllük benzerdir. Aşağıdakiler sık görülen bir yaklaşımdır; Buradaki Bayeslilerden birinin bu konuda alternatif bir yol tartışmak için başka bir cevap ekleyebilmesi harika olurdu.p
Eğer işe ettik varsayalım kanserli insanları. Biyobelirteç testinizi her birine uygularsınız, böylece arayacağımız 0 ve 1'lerden oluşan bir dizi elde edersiniz . Girişleri başarı olasılığı olan bir Bernoulli dağılımına sahip olacaktır . Tahmini olan . Umarım "büyük" dür ve tahmininizin kesinliğini için bir güven aralığı ile değerlendirebilirsiniz . p p p = Σ x / n- p snx
x
ppp^=∑x/np^p
Sorunuz ne kadar büyük olması gerektiğini bilmek istediğinizi söylüyor . Bunu cevaplamak için, ne kadar büyük "büyük" olduğuna ve örnekleme hatası nedeniyle ne kadar düşük bir hassasiyete sahip olabileceğinize karar vermek için biyobelirteç literatürüne başvurmanız gerekir. Onun hassasiyeti daha büyük olması bir biyomarker "iyi" olduğuna karar varsayalım (değil iyi bu yüzden aslında) ve istediğiniz bir duyarlılık tespit etmek için bir% 90 şans var bu yüzden yeterince büyük olması . Önem düzeyinizi olarak kontrol etmek istediğinizi varsayalım . p = 0.5 n p = 0.57 α = 0.05np=0.5np=0.57α=0.05
En az iki yaklaşım vardır - analitik ve simülasyon. pwr
Paket R
zaten bu tasarım ile yardıma var - önce bunu yüklemeniz gerekir. Sonra bir efekt boyutuna ihtiyacınız olacak, o zaman istediğiniz fonksiyon pwr.p.test
.
library(pwr)
h1 <- ES.h(0.57, 0.5)
pwr.p.test(h = h1, n = NULL, sig.level = 0.05, power = 0.9, alt = "greater")
proportion power calculation for binomial distribution (arc...
h = 0.1404614
n = 434.0651
sig.level = 0.05
power = 0.9
alternative = greater
Etrafında ihtiyacım olacağını Yani bir duyarlılık tespit etmek için kanserli insanları güçle senin anlamlılık düzeyinde iken . Ben de simülasyon yaklaşımını denedim ve benzer bir cevap veriyor. Tabii ki, gerçek duyarlılık yüksekse (biyobelirteçiniz daha iyidir), bunu tespit etmek için daha az kişiye ihtiyacınız olacaktır.0.57 0.90 0.05 0.574350.570.900.050.57
Verilerinizi aldıktan sonra, testi çalıştırmanın yolu (argüman uğruna verileri simüle edeceğim).
n <- 435
sens <- 0.57
x <- rbinom(n, size = 1, prob = sens)
binom.test(sum(x), n, p = 0.5, alt = "greater")
Exact binomial test
data: sum(x) and n
number of successes = 247, number of trials = 435,
p-value = 0.002681
alternative hypothesis: true probability of success is greater than 0.5
95 percent confidence interval:
0.527342 1.000000
sample estimates:
probability of success
0.5678161
Duyarlılık tahmini . Asıl önemli olan için bu durumda olan güven aralığıdır .p [ 0.527 , 1 ]0.568p[0.527,1]
DÜZENLEME: Simülasyon yaklaşımını daha iyi seviyorsanız, bunu şu şekilde yapabilirsiniz: set
n <- 435
sens <- 0.57
nSim <- 1000
ve bırakıldığında yukarı runTest
olmak
runTest <- function(){
x <- rbinom(1, size = n, prob = sens)
tmp <- binom.test(x, n, p = 0.5, alt = "greater")
tmp$p.value < 0.05
}
yani güç tahmini
mean(replicate(nSim, runTest()))
[1] 0.887