Як створити діаграму бланда-альтмана в r (крок за кроком)
Діаграма Бланда-Альтмана використовується для візуалізації відмінностей вимірювань між двома різними приладами або двома різними методами вимірювання.
Це корисно для визначення того, наскільки схожі два інструменти або техніки для вимірювання однієї концепції.
Цей підручник надає покроковий приклад того, як створити діаграму Бланда-Альтмана в R.
Крок 1: Створіть дані
Припустімо, що біолог використовує два різні інструменти (А і В), щоб виміряти вагу одного і того ж набору з 20 різних жаб у грамах.
Ми створимо наступний кадр даних у R, який представлятиме вагу кожної жаби, виміряну кожним інструментом:
#create data df <- data. frame (A=c(5, 5, 5, 6, 6, 7, 7, 7, 8, 8, 9, 10, 11, 13, 14, 14, 15, 18, 22, 25), B=c(4, 4, 5, 5, 5, 7, 8, 6, 9, 7, 7, 11, 13, 13, 12, 13, 14, 19, 19, 24)) #view first six rows of data head(df) AB 1 5 4 2 5 4 3 5 5 4 6 5 5 6 5 6 7 7
Крок 2: обчисліть різницю вимірювань
Далі ми створимо два нових стовпці у фреймі даних, що міститиме середнє значення кожної жаби, а також різницю вимірювань:
#create new column for average measurement df$avg <- rowMeans(df) #create new column for difference in measurements df$diff <- df$A - df$B #view first six rows of data head(df) AB avg diff 1 5 4 4.5 1 2 5 4 4.5 1 3 5 5 5.0 0 4 6 5 5.5 1 5 6 5 5.5 1 6 7 7 7.0 0
Крок 3: Обчисліть середню різницю та довірчий інтервал
Далі ми обчислимо середню різницю вимірювань між двома приладами, а також верхню та нижню межі 95% довірчого інтервалу для середньої різниці:
#find average difference mean_diff <- mean(df$diff) mean_diff [1] 0.5 #find lower 95% confidence interval limits lower <- mean_diff - 1.96*sd(df$diff) lower [1] -1.921465 #find upper 95% confidence interval limits upper <- mean_diff + 1.96*sd(df$diff) upper [1] 2.921465
Середня різниця виявляється 0,5 , а 95% довірчий інтервал для середньої різниці становить [-1,921, 2,921] .
Крок 4: Створіть графік Бланда-Альтмана
Далі ми використаємо наступний код для створення діаграми Бланда-Альтмана за допомогою пакета візуалізації даних ggplot2 :
#load ggplot2 library (ggplot2) #create Bland-Altman plot ggplot(df, aes (x = avg, y = diff)) + geom_point(size=2) + geom_hline(yintercept = mean_diff) + geom_hline(yintercept = lower, color = " red ", linetype=" dashed ") + geom_hline(yintercept = upper, color = " red ", linetype=" dashed ") + ggtitle(" Bland-Altman Plot ") + ylab(" Difference Between Measurements ") + xlab(" Average Measurement ")
На осі абсцис графіка відображається середнє значення двох приладів, а на осі у – різниця вимірювань між двома інструментами.
Чорна лінія представляє середню різницю вимірювань між двома інструментами, а дві червоні пунктирні лінії представляють межі 95% довірчого інтервалу для середньої різниці.