Jak w zwykłym języku angielskim interpretuje się fabułę Blanda-Altmana?
Jakie są zalety korzystania z wykresu Blanda-Altmana w porównaniu z innymi metodami porównywania dwóch różnych metod pomiarowych?
Jak w zwykłym języku angielskim interpretuje się fabułę Blanda-Altmana?
Jakie są zalety korzystania z wykresu Blanda-Altmana w porównaniu z innymi metodami porównywania dwóch różnych metod pomiarowych?
Odpowiedzi:
Wykres Blanda-Altmana jest szerzej znany jako wykres średniej różnicy Tukeya (jedna z wielu tabel opracowanych przez Johna Tukeya http://en.wikipedia.org/wiki/John_Tukey ).
Chodzi o to, że oś x jest średnią z dwóch pomiarów, co najlepiej zgaduje co do „poprawnego” wyniku, a oś y jest różnicą między dwiema różnicami pomiaru. Na wykresie można następnie wyróżnić niektóre rodzaje anomalii w pomiarach. Na przykład, jeśli jedna metoda zawsze daje zbyt wysoki wynik, to wszystkie punkty otrzymasz powyżej lub wszystkie poniżej linii zerowej. Może również ujawnić, na przykład, że jedna metoda zawyża wysokie wartości, a niedoszacowuje niskie wartości.
Jeśli widzisz punkty na wykresie Blanda-Altmana rozrzucone po całym miejscu, powyżej i poniżej zera, sugeruje to, że nie ma spójnego nastawienia jednego podejścia względem drugiego (oczywiście mogą istnieć ukryte uprzedzenia, które robi ten wykres nie pokazuje się).
Zasadniczo jest to dobry pierwszy krok do eksploracji danych. Inne techniki mogą zostać wykorzystane do dokładniejszego zachowania pomiarów.
Oprócz wykresu różnica w stosunku do przeciętnego, wykresy Blanda i Altmana mogą być również stosunkiem w stosunku do średniej. działki.
Na przykład nowa maszyna do ważenia podaje następujące dane, gdy wchodzą na nią osoby o masie 60, 70 i 80 kg.
66 kg 77 kg 88 kg
W takim scenariuszu maszyna ważąca za każdym razem przecenia wagę o 10%. Tak więc stosunek do średniego wykresu zapewni lepszą wizualizację danych w tym przypadku.
Oto definicja Wikipedii Bland-Altman:
Wykres Blanda-Altmana (wykres różnicowy) w chemii analitycznej lub biomedycynie jest metodą wykreślania danych stosowaną w analizie zgodności między dwoma różnymi testami. Jest identyczny z wykresem średniej różnicy Tukeya 1 , pod którym jest znany w innych dziedzinach, ale spopularyzował go w statystykach medycznych J. Martin Bland i Douglas G. Altman
Jeśli chcesz zaimplementować wykres Bland-Altman w Pythonie, możesz użyć tego:
Jeśli chcesz to zrobić w Pythonie, możesz użyć tego kodu
import matplotlib.pyplot as plt
import numpy as np
from numpy.random import random
%matplotlib inline
plt.style.use('ggplot')
Właśnie dodałem ostatni wiersz, ponieważ podoba mi się styl ggplot.
def plotblandaltman(x,y,title,sd_limit):
plt.figure(figsize=(20,8))
plt.suptitle(title, fontsize="20")
if len(x) != len(y):
raise ValueError('x does not have the same length as y')
else:
for i in range(len(x)):
a = np.asarray(x)
b = np.asarray(x)+np.asarray(y)
mean_diff = np.mean(b)
std_diff = np.std(b, axis=0)
limit_of_agreement = sd_limit * std_diff
lower = mean_diff - limit_of_agreement
upper = mean_diff + limit_of_agreement
difference = upper - lower
lowerplot = lower - (difference * 0.5)
upperplot = upper + (difference * 0.5)
plt.axhline(y=mean_diff, linestyle = "--", color = "red", label="mean diff")
plt.axhline(y=lower, linestyle = "--", color = "grey", label="-1.96 SD")
plt.axhline(y=upper, linestyle = "--", color = "grey", label="1.96 SD")
plt.text(a.max()*0.85, upper * 1.1, " 1.96 SD", color = "grey", fontsize = "14")
plt.text(a.max()*0.85, lower * 0.9, "-1.96 SD", color = "grey", fontsize = "14")
plt.text(a.max()*0.85, mean_diff * 0.85, "Mean", color = "red", fontsize = "14")
plt.ylim(lowerplot, upperplot)
plt.scatter(x=a,y=b)
Na koniec dokonuję losowych wartości i porównuję je w tej funkcji
x = np.random.rand(100)
y = np.random.rand(100)
plotblandaltman(x,y,"Bland-altman plot",1.96)
Po drobnych modyfikacjach możesz łatwo dodać pętlę for i wykonać kilka wykresów