有害必要数(Number Needed to Harm, NNH)は、1人の有害事象が起こる人が出現するのに、何かの影響を受けた人が何人必要かという数。
目次
NNHを計算するにはどうやるか?
使えるシチュエーションは、
- 曝露Aを受ける人受けない人
- 処置Bを受ける人受けない人
- 介入Cを受ける人受けない人
などなど。
R で計算するなら、以下の自作の関数を使って計算できる。
riskdiff.confint <- function(r1,n1,r2,n2,sig.level=.05,side=2){
p1 <- r1/n1
p2 <- r2/n2
diff <- p1 - p2
se <- sqrt(p1*(1-p1)/n1 + p2*(1-p2)/n2)
LL <- diff - qnorm(sig.level/side, lower.tail=FALSE)*se
UL <- diff + qnorm(sig.level/side, lower.tail=FALSE)*se
NNH <- 1/diff
NNH.LL <- 1/UL
NNH.UL <- 1/LL
c(round(c(Prop.G1=p1,Prop.G2=p2,Difference=diff,LL.95CI=LL,UL.95CI=UL)*100,1),round(c(NNH=NNH,NNH.LL=NNH.LL,NNH.UL=NNH.UL),0))
}
必要な情報をインプットしたら、答えが出る。
グループ1の分母が532人、そのうちイベントが起きた、すなわち分子が11人、
グループ2の分母が933人、そのうちイベントが起きた、すなわち分子が3人
riskdiff.confint(r1=11,n1=532,r2=3,n2=933)
計算結果は、以下の通り。
- Prop.G1:グループ1の発現割合
- Prop.G2:グループ2の発現割合
- Difference:グループ1と2の発現割合の差
- LL.95CI:発現割合の差の95%信頼区間(CI)下限
- UL.95CI:発現割合の差の95%CIの上限
- NNH:有害必要数
- NNH.LL:有害必要数の95%CIの下限
- NNH.UL:有害必要数の95%CI上限
つまり、発現割合の差が約1.7%だと、その逆数57が、有害必要数と計算される。
> riskdiff.confint(r1=11,n1=532,r2=3,n2=933)
Prop.G1 Prop.G2 Difference LL.95CI UL.95CI NNH NNH.LL NNH.UL
2.1 0.3 1.7 0.5 3.0 57.0 33.0 207.0
治療数 NNT との関係
治療必要数(Number Needed to Treat)と同じ計算方法。
「治療してよくなる人を見出すために何人必要か」と、「有害なイベントが起きてしまうのは何人治療したときか」は、計算としては同じこと。
まとめ
発現率の差の逆数がNNH。
関数を R で自作した。
参考になれば。
コメント