回答:
( R
コーディングスタイルの 問題として、T
これはのエイリアスであるため、変数名として 使用しないことTRUE
をお勧めします。この方法を使用すると、必然的に問題が発生します。)
あなたの質問はややあいまいです。それを解釈するにはいくつかの方法があります。それらを見ていきましょう:
タイプ1の打ち切りをシミュレートすることを規定します。これは通常、実験が一定期間実行され、その時点までにイベントが発生していないスタディユニットはすべて検閲されることを意味します。それが意図したとおりである場合、形状とスケールのパラメーター、および打ち切り時間と速度を同時に指定することは(必ずしも)不可能です。3つを規定したので、最後は必ず修正されます。
(試行中)形状パラメーターを解決:
これは失敗します。形状パラメータが何であっても、スケールパラメータが1に保持されているワイブル分布では、0.88の打ち切り時間で15%の打ち切り率を実現することは不可能であるようです。
optim(.5, fn=function(shp){(pweibull(.88, shape=shp, scale=1, lower.tail=F)-.15)^2})
# $par
# [1] 4.768372e-08
# ...
# There were 46 warnings (use warnings() to see them)
pweibull(.88, shape=4.768372e-08, scale=1, lower.tail=F)
# [1] 0.3678794
optim(.5, fn=function(shp){(pweibull(.88, shape=shp, scale=1, lower.tail=F)-.15)^2},
control=list(reltol=1e-16))
# $par
# [1] 9.769963e-16
# ...
# There were 50 or more warnings (use warnings() to see the first 50)
pweibull(.88, shape=9.769963e-16, scale=1, lower.tail=F)
# [1] 0.3678794
スケールパラメータの解決:
optim(1, fn=function(scl){(pweibull(.88, shape=.5, scale=scl, lower.tail=F)-.15)^2})
# $par
# [1] 0.2445312
# ...
pweibull(.88, shape=.5, scale=0.2445312, lower.tail=F)
# [1] 0.1500135
打ち切り時間の解決:
qweibull(.15, shape=.5, scale=1, lower.tail=F)
# [1] 3.599064
打ち切り率の解決:
pweibull(.88, shape=.5, scale=1, lower.tail=F)
# [1] 0.3913773
一方、打ち切りは、たとえばドロップアウトが原因で、研究全体でランダムに(通常は独立して)発生していると考えることができます。その場合、手順はワイブル変量の2つのセットをシミュレートすることです。次に、どちらが先に来るかを単純にメモします。小さい方の値をエンドポイントとして使用し、小さい方の値が打ち切り時間である場合は、そのユニットを打ち切りと呼びます。例えば:
set.seed(0775)
t = rweibull(3, shape=.5, scale=1)
t # [1] 0.7433678 1.1325749 0.2784812
c = rweibull(3, shape=.5, scale=1.5)
c # [1] 3.3242417 2.8866217 0.9779436
time = pmin(t, c)
time # [1] 0.7433678 1.1325749 0.2784812
cens = ifelse(c<t, 1, 0)
cens # [1] 0 0 0
同じことを話していることを確認するために、タイプIの検閲は
...実験には一定数の被験者またはアイテムがあり、所定の時間に実験を停止します。この時点で、残っている被験者はすべて右打ち切りになります。
打ち切り時間= 0.88を使用して正しい打ち切りデータを生成するには、次のmin
関数を使用します。
T <- rweibull(3, shape=.5, scale=1)
censoring_time <- 0.88
T_censored <- min(censoring_time, T)
ただし、「検閲率= 0.15」と言ったときの意味は完全にはわかりません...被験者の15%が正しく検閲されていると言いますか?検閲に関するこれらのメモは、タイプI検閲に必要な唯一のパラメーターが時間の検閲であることを示しているようです。そのため、このレートがどのように考慮されるかはわかりません。
min
(または、より一般的にはpmin
)は、でそれをシミュレートする方法R
です。(非生存研究における正しい打ち切りの例は、廃水中の細菌コロニーの分析です。これは、顕微鏡のスライドで目に見えるものを手動で数えることによって行われます。汚染が激しい場合、結果は「数が多すぎる」として与えられます。 )
optim
関数は素晴らしい)ですが、特定の割合の検閲を達成するために2番目の答えをどのように調整しますか?