如何计算R中的相对风险?

时间:2014-12-21 17:43:43

标签: r

如何计算R中的相对风险?

在输入中我有

names(DS)
Tab<-table(DS[,5],DS[,11],DS[,3])

      No Yes
  No   4  16
  Yes  40 168

我是R编程语言的新手......

1 个答案:

答案 0 :(得分:14)

这是一个相当简单的计算;相对风险仅为(pos1/total1)/(pos2/total2),其中pos1是第一组中的案例数,第二组中为pos2total变量是组总数

但是,您可能对epitab包的epitools功能感兴趣:

## maybe:
##   install.packages("epitools")
library("epitools")

请参阅?epicalc了解输入格式,但这应该适用于您的示例:

tab <- matrix(c(4,16,40,168),byrow=TRUE,nrow=2)
epitab(tab,method="riskratio")
## $tab
##           Outcome
## Predictor  Disease1        p0 Disease2        p1 riskratio     lower    upper
##   Exposed1        4 0.2000000       16 0.8000000  1.000000        NA       NA
##   Exposed2       40 0.1923077      168 0.8076923  1.009615 0.8030206 1.269361
##           Outcome
## Predictor  p.value
##   Exposed1      NA
##   Exposed2       1

你当然应该仔细检查结果是否有意义;例如p0对于第一组是4/20 = 0.2,对于第二组是40/208 = 0.192。风险比为((16/20)/(168/208))= 0.8 / 0.8076 = 1.009。