Как создать график Бланда-Альтмана в Python


График Бленда-Альтмана используется для визуализации различий в измерениях между двумя разными инструментами или двумя разными методами измерения.

Это полезно для определения того, насколько похожи два инструмента или метода при измерении одной и той же конструкции.

В этом руководстве представлен пошаговый пример создания графика Бланда-Альтмана в Python.

Шаг 1: Создайте данные

Предположим, биолог использует два разных инструмента (А и В) для измерения веса одной и той же группы из 20 разных лягушек в граммах.

Мы создадим следующий фрейм данных, который представляет вес каждой лягушки, измеренный каждым инструментом:

import pandas as pd

df = pd.DataFrame({'A': [5, 5, 5, 6, 6, 7, 7, 7, 8, 8, 9,
 10, 11, 13, 14, 14, 15, 18, 22, 25],
 'B': [4, 4, 5, 5, 5, 7, 8, 6, 9, 7, 7, 11,
 13, 13, 12, 13, 14, 19, 19, 24]})

Шаг 2: Создайте график Блэнда-Альтмана

Далее мы будем использовать функцию mean_diff_plot() из пакета statsmodels для создания графика Бланда-Альтмана:

import statsmodels.api as sm
import matplotlib.pyplot as plt

#create Bland-Altman plot 
f, ax = plt.subplots(1, figsize = (8,5))
sm. graphics.mean_diff_plot (df.A, df.B, ax = ax)

#display Bland-Altman plot
plt.show() 

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

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

Средняя разница оказывается равной 0,5 , а 95-процентный доверительный интервал для средней разницы равен [-1,86, 2,86] .