Biyomarker çalışması için güç hesapları / örneklem büyüklüğü


13

Hastanın kanser olup olmadığını tahmin etmek için potansiyel bir biyobelirteç var. Biyobelirteç test sonucu ikili değer pozitif veya negatiftir. Bu biyobelirteçin iyi bir öngörücü olup olmadığını belirlemek için test edilmesi gereken hasta miktarı hakkında bir fikir edinmek istiyoruz.

İnternette okurken, gitmenin yolu duyarlılığa (vaka sayısı için) ve özgüllüğe (kontrol sayısı için) bakmaktır. Bu durumu tek örnek oranlı bir test olarak ele almanız önerilir, ancak duyarlılığın ne olduğunu ve dışında hazırlandığınız aralığı tahmin etmek için nasıl gitmeniz gerektiği belirsizdir. 0,8'den büyük bir hassasiyete sahip herhangi bir biyobelirteç "iyi" olarak kabul edersem, iki değişkeni nasıl kurarsınız? Sıfır hipotezimin biyobelirteç olması rastgele bir ödevden daha iyi değildir, yani 0,5 hassasiyettir. Herkes bunu yapmak için en iyi yolu bir örnek verebilir (özellikle R ise).


Bir dizi bilinen vaka ile başlayacağınızı, daha sonra biyobelirteç testinizi gerçekleştireceğinizi (veri toplama) ve hassasiyeti tahmin edeceğinizi mi söylüyorsunuz? Ve bilinen bir dizi kontrolle başlayacak, veri toplayacak ve özgüllüğü tahmin edecek misiniz?

Bu hesaplama için evet. Gerçekte hastanın işe alınmasından önce bilemeyiz, ancak yeterli vaka ve kontrole sahip olana kadar işe almaya devam edeceğiz. Ayrıca, bir hastanın bir vaka olacağı tahmin edilen bir oranımız var, bu yüzden işe almamız gereken toplam sayıyı tahmin etmek için kullanabiliriz,
danielsbrewer

Biyogösterge sadece bir evet / hayır cevabı veriyorsa, hassasiyet / özgüllükle gidebilir ve oranlar için testler için bir bağlamda planlama yapabilirsiniz. Bunlardan biri için bir değer "iyi" veya "kötü" ise, yanlış kararın gerçek yaşam sonuçlarına bağlıdır. Biyobelirteç başlangıçta sürekli bir ölçüm verirse, ROC eğrileri ve AUC istatistikleri ve karşılık gelen örnek büyüklüğü planlama yöntemleri daha uygun olabilir. Ancak tüm bunlar sadece tanı testiyle bağlantılı yöntemlerin yüzeyini
çiziyor

Yanıtlar:


11

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 snxxppp^=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. pwrPaket Rzaten 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ı runTestolmak

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
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.