scipy.stats.contingency.relative_risk¶
- scipy.stats.contingency.relative_risk(exposed_cases, exposed_total, control_cases, control_total)[源代码]¶
计算相对风险(也称为风险比率)。
此函数计算与2x2列联表相关的相对风险 ([1], 第2.2.3节; [2], 第3.1.2节)。不接受表作为参数,而是将用于计算相对风险的各个数字作为单独的参数给出。这是为了避免列联表的哪一行或哪一列对应于“暴露的”情况以及哪一行或哪一列对应于“控制”情况的模棱两可。与比方说赔率比不同,相对风险在行或列的互换下不是一成不变的。
- 参数
- exposed_cases非负整数
“暴露”个人样本中的“病例”数量(即疾病或其他感兴趣的事件的发生)。
- exposed_total正整数
样本中“暴露”的个人总数。
- control_cases非负整数
“对照”或非暴露个体样本中的“病例”数量。
- control_total正整数
样本中“对照”个体的总数。
- 退货
- 结果 :实例
RelativeRiskResult
实例 该对象具有Float属性
relative_risk
,即:rr = (exposed_cases/exposed_total) / (control_cases/control_total)
该对象还具有方法
confidence_interval
计算给定置信水平的相对风险的置信区间。
- 结果 :实例
注意事项
R包外延具有以下功能 riskratio ,它接受具有以下布局的表格:
disease=0 disease=1 exposed=0 (ref) n00 n01 exposed=1 n10 n11
对于上述格式的2x2表,CI的估计值通过以下方式计算 riskratio 当给定参数method=“wald”时,或使用函数 riskratio.wald 。
例如,在对吸烟者和非吸烟者样本中肺癌发病率的测试中,“暴露”类别对应于“是吸烟者”,而“疾病”类别对应于“患有或患有肺癌”。
将相同的数据传递到
relative_risk
,使用:relative_risk(n11, n10 + n11, n01, n00 + n01)
1.7.0 新版功能.
参考文献
- 1
艾伦·埃格斯蒂,“分类数据分析导论”(第二版),威利,新泽西州霍博肯,美国(2007)。
- 2(1,2)
哈迪奥·萨海和安沃尔·库尔希德,流行病学统计学,CRC出版社有限责任公司,博卡拉顿,美国佛罗里达州(1996)。
示例
>>> from scipy.stats.contingency import relative_risk
此示例来自的示例3.1 [2]. 下表汇总了一项心脏病研究的结果:
High CAT Low CAT Total -------- ------- ----- CHD 27 44 71 No CHD 95 443 538 Total 122 487 609
冠心病是冠心病,CAT是指循环中的儿茶酚胺水平。CAT是“曝光”变量,HIGH CAT是“曝光”类别。因此,要传递到的表中的数据
relative_risk
是::exposed_cases = 27 exposed_total = 122 control_cases = 44 control_total = 487
>>> result = relative_risk(27, 122, 44, 487) >>> result.relative_risk 2.4495156482861398
找出相对风险的置信区间。
>>> result.confidence_interval(confidence_level=0.95) ConfidenceInterval(low=1.5836990926700116, high=3.7886786315466354)
该区间不包含1,因此该数据支持高CAT与更高的冠心病风险相关的说法。