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 для вычисления доверительного интервала относительного риска при заданном уровне доверия.

Смотрите также

odds_ratio

Примечания

Пакет R epitools имеет функцию riskratio, который принимает таблицу со следующей структурой:

                disease=0   disease=1
exposed=0 (ref)    n00         n01
exposed=1          n10         n11

Для таблицы 2x2 в указанном формате оценка доверительного интервала вычисляется по формуле riskratio когда задан аргумент method="wald", или с функцией riskratio.wald.

Например, в тесте заболеваемости раком легких среди выборки курильщиков и некурящих, категория "подверженных" соответствовала бы "является курильщиком", а категория "заболевание" соответствовала бы "имеет или имел рак легких".

Чтобы передать те же данные в relative_risk, используйте:

relative_risk(n11, n10 + n11, n01, n00 + n01)

Добавлено в версии 1.7.0.

Ссылки

[1]

Алан Агрести, Введение в анализ категориальных данных (второе издание), Wiley, Хобокен, Нью-Джерси, США (2007).

[2] (1,2)

Хардео Сахаи и Анвер Хуршид, Статистика в эпидемиологии, CRC Press LLC, Бока-Ратон, Флорида, США (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

CHD — ишемическая болезнь сердца, а CAT означает уровень циркулирующего катехоламина. CAT — это переменная «воздействия», а высокий 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 связан с большим риском CHD.