Как создать график Блэнда-Альтмана в R (шаг за шагом)

Как создать график Блэнда-Альтмана в 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)

 A B
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)

 A B 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 ") 
Сюжет Бланда-Альтмана в R

По оси X графика отображается среднее значение измерений двух инструментов, а по оси Y — разница в измерениях двух инструментов.

Черная линия представляет среднюю разницу в измерениях между двумя приборами, а две красные пунктирные линии представляют пределы 95% доверительного интервала для средней разницы.

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.