如何计算R中的相对风险?
在输入中我有
names(DS)
Tab<-table(DS[,5],DS[,11],DS[,3])
No Yes
No 4 16
Yes 40 168
我是R编程语言的新手......
答案 0 :(得分:14)
这是一个相当简单的计算;相对风险仅为(pos1/total1)/(pos2/total2)
,其中pos1
是第一组中的案例数,第二组中为pos2
,total
变量是组总数
但是,您可能对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。