Внутригрупповой корреляции в модуле Python?

голоса
4

Я ищу для расчета внутригрупповой корреляции (ICC) в Python. Я не смог найти существующий модуль , который имеет эту функцию. Есть ли альтернативное имя, или я должен сделать это сам? Я знаю , этот вопрос был задан год назад на крест ПРОВЕРЯЕМЫЕ другим пользователем, но не было ответов. Я ищу , чтобы сравнить непрерывные оценки между двумя оценщиками.

Задан 05/12/2016 в 00:52
источник пользователем
На других языках...                            


2 ответов

голоса
3

Есть несколько реализаций ICC в R . Они могут быть использованы в Python с помощью rpy2 пакета. Пример:

from rpy2.robjects import DataFrame, FloatVector, IntVector
from rpy2.robjects.packages import importr
from math import isclose

groups = [1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4,
          4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8]
values = [1, 2, 0, 1, 1, 3, 3, 2, 3, 8, 1, 4, 6, 4, 3,
          3, 6, 5, 5, 6, 7, 5, 6, 2, 8, 7, 7, 9, 9, 9, 9, 8]

r_icc = importr("ICC")
df = DataFrame({"groups": IntVector(groups),
                "values": FloatVector(values)})
icc_res = r_icc.ICCbare("groups", "values", data=df)
icc_val = icc_res[0] # icc_val now holds the icc value

# check whether icc value equals reference value
print(isclose(icc_val, 0.728, abs_tol=0.001))
Ответил 16/01/2018 в 09:07
источник пользователем

голоса
3

Вы можете найти реализацию в ICC или Brain_Data.icc

Ответил 05/12/2016 в 11:01
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more