偶発事象が介入の直後に起きるとき

  • 今、多くのサンプルがあって、そのサンプルの一部に、何かしらのインターベンションを適当な日に実施することとする
  • 一方、このサンプルには、偶発的に何かしらのイベントが起きるものとする
  • さて、インターベンションとイベントとの間隔はどのような分布になるだろうか?
  • 総サンプル数をNallとする
  • インターベンションを受けるサンプル数をNとする
  • インターベンションを実施する期間をD(日)とする
  • 偶発イベントは、Nallで集計すると、1年(365日)あたり、R件とする
Nall<-10^6
N<-10^5
D<-60
R<-500
Y<-365
# 1日あたり、1サンプルあたり、偶発イベントが起きる確率
p<-R/Nall/Y
# インターベンションを受けるサンプルに、日をランダムに割り付ける

Nrep<-1000 # シミュレーション繰り返し
Out<-matrix(0,Nrep,D)
for(i in 1:Nrep){
	V<-sample(1:D,N,replace=TRUE)
# イベントを起こす
X<-sample(1:(D+1),N,replace=TRUE,prob=c(rep(p,D),1-p*D/365))
# イベントが起きたサンプルIDを抽出する
S<-which(X<=D)
# イベントが起きたサンプルについて、インターベンションの日とイベントの日を抽出する
V2<-V[S]
X2<-X[S]
# インターベンションとイベントの日の差を取る
# 0は同日、正は、インターベンションの後にイベントが起きたものとする
E2<-X2-V2
# その様子
hist(E2)
plot(sort(E2))
# その集計
table(E2)
t<-tabulate(E2,D)
Out[i,]<-t
}