Коэффициент внутриклассовой корреляции (ICC или intraclass correlation coefficient) используется, чтобы определить, могут ли предметы или предметы быть надежно оценены разными оценщиками.
Значение ICC может варьироваться от 0 до 1, где 0 означает отсутствие надежность среди оценщиков и 1 указывает на абсолютную надежность.\n
Самый простой способ рассчитать ICC в Python — использовать pingouin.intraclass_corr() из статистический пакет pingouin, использующий следующий синтаксис:
pingouin.intraclass_corr(data, targets, raters, ratings)
где:
- data: имя датафрейма
- targets: имя столбца, содержащего
targets
(оцениваемые вещи) - raters: название столбца, содержащего оценщиков
- ratings: Название столбца, содержащего рейтинги
В этом руководстве представлен пример использования этой функции на практике.
Шаг 1. Установите Pingouin
Во-первых, мы должны установить Pingouin:
pip install pingouin
Шаг 2. Создайте данные
Предположим, четырех разных судей попросили оценить качество шести разных колледжей. вступительные экзамены. Мы можем создать следующий фрейм данных для хранения рейтингов судей:
import pandas as pd
#создайте DataFrame
df = pd.DataFrame({'exam': [1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6,
1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6],
'judge': ['A', 'A', 'A', 'A', 'A', 'A',
'B', 'B', 'B', 'B', 'B', 'B',
'C', 'C', 'C', 'C', 'C', 'C',
'D', 'D', 'D', 'D', 'D', 'D'],
'rating': [1, 1, 3, 6, 6, 7, 2, 3, 8, 4, 5, 5,
0, 4, 1, 5, 5, 6, 1, 2, 3, 3, 6, 4]})
#view first five rows of DataFrame
df.head()
# exam judge rating
#0 1 A 1
#1 2 A 1
#2 3 A 3
#3 4 A 6
#4 5 A 6
Шаг 3. Рассчитайте коэффициент внутриклассовой корреляции
Далее мы будем использовать следующий код для расчета коэффициента внутриклассовой корреляции:
import pingouin as pg
icc = pg.intraclass_corr(data=df, targets='exam', raters='judge', ratings='rating')
icc.set_index('Type')
Description ICC F df1 df2 pval CI95%
Type
ICC1 Single raters absolute 0.505252 5.084916 5 18 0.004430 [0.11, 0.89]
ICC2 Single random raters 0.503054 4.909385 5 15 0.007352 [0.1, 0.89]
ICC3 Single fixed raters 0.494272 4.909385 5 15 0.007352 [0.09, 0.88]
ICC1k Average raters absolute 0.803340 5.084916 5 18 0.004430 [0.33, 0.97]
ICC2k Average random raters 0.801947 4.909385 5 15 0.007352 [0.31, 0.97]
ICC3k Average fixed raters 0.796309 4.909385 5 15 0.007352 [0.27, 0.97]
Эта функция возвращает следующие результаты:
- Description: тип вычисляемого ICC
- ICC: коэффициент внутриклассовой корреляции (ICC)
- F: F-значение ICC
- df1, df2: степени свободы, связанные с F-значением
- pval: p-значение e связан с F-значением
- CI95%: 95% доверительный интервал для ICC
Обратите внимание, что здесь рассчитывается шесть различных ICC. Это связано с тем, что существует несколько способов расчета ICC в зависимости от следующих предположений:
- Model: Односторонние случайные эффекты, Двусторонние случайные эффекты или Двусторонние смешанные эффекты
- Type of Relationship: Последовательность или абсолютное согласие
- Unit: Один оценщик или среднее значение оценщиков