Як обчислити внутрішньокласовий коефіцієнт кореляції в python


Внутрішньокласовий коефіцієнт кореляції (ICC) використовується для визначення того, чи можуть предмети або теми бути надійно оцінені різними оцінювачами.

Значення ICC може коливатися від 0 до 1, де 0 вказує на відсутність надійності серед оцінювачів, а 1 вказує на повну надійність.

Найпростіший спосіб обчислити ICC у Python — це використовувати функцію penguin.intraclass_corr() із пакета статистики penguin , яка використовує такий синтаксис:

pengouin.intraclass_corr(дані, цілі, оцінювачі, оцінки)

золото:

  • дані: ім’я кадру даних
  • targets: Назва стовпця, що містить «targets» (речі, які зазначаються)
  • рецензенти: назва стовпця, що містить рецензентів
  • примітки: назва стовпця, що містить примітки

Цей підручник містить практичний приклад використання цієї функції.

Крок 1: Встановіть Penguin

Перш за все, вам потрібно встановити Penguin:

 pip install penguin

Крок 2: Створіть дані

Припустімо, чотирьох різних суддів просять оцінити якість шести різних вступних іспитів до коледжу. Ми можемо створити такий фрейм даних для зберігання оцінок суддів:

 import pandas as pd

#createDataFrame
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 To 6
4 5 A 6

Крок 3: Розрахувати внутрішньокласовий коефіцієнт кореляції

Далі ми використаємо такий код для обчислення внутрішньокласового коефіцієнта кореляції:

 import penguin 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%
Kind							
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]

Ця функція повертає такі результати:

  • Опис: обчислений тип ICC
  • ICC: внутрішньокласовий коефіцієнт кореляції (ICC)
  • F: значення F ICC
  • df1, df2: ступені свободи, пов’язані зі значенням F
  • pval: значення p, пов’язане зі значенням F
  • CI95%: 95% довірчий інтервал для ICC

Зверніть увагу, що тут розраховано шість різних ICC. Дійсно, існує кілька способів розрахунку ICC на основі таких припущень:

  • Модель: односторонні випадкові ефекти, двосторонні випадкові ефекти або двосторонні змішані ефекти
  • Тип відносин: послідовність або абсолютна згода
  • Одиниця: окремий оцінювач або середнє значення оцінювачів

Щоб отримати детальне пояснення цих припущень, зверніться до цієї статті .

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *