SAS - Phân tích Bland Altman

Phân tích Bland-Altman là một quá trình để xác minh mức độ đồng ý hoặc bất đồng giữa hai phương pháp được thiết kế để đo các thông số giống nhau. Mối tương quan cao giữa các phương pháp cho thấy rằng mẫu đủ tốt đã được chọn trong phân tích dữ liệu. Trong SAS, chúng tôi tạo biểu đồ Bland-Altman bằng cách tính giá trị trung bình, giới hạn trên và giới hạn dưới của các giá trị biến. Sau đó, chúng tôi sử dụng PROC SGPLOT để tạo ra âm mưu Bland-Altman.

Cú pháp

Cú pháp cơ bản để áp dụng PROC SGPLOT trong SAS là:

PROC SGPLOT DATA = dataset;
SCATTER X = variable Y = Variable;
REFLINE value;

Sau đây là mô tả về các tham số được sử dụng:

  • Dataset là tên của tập dữ liệu.

  • SCATTER câu lệnh dừng biểu đồ biểu đồ phân tán của giá trị được cung cấp ở dạng X và Y.

  • REFLINE tạo một đường tham chiếu ngang hoặc dọc.

Thí dụ

Trong ví dụ dưới đây, chúng tôi lấy kết quả của hai thử nghiệm được tạo bởi hai phương pháp có tên mới và cũ. Chúng tôi tính toán sự khác biệt về giá trị của các biến và cả giá trị trung bình của các biến của cùng một quan sát. Chúng tôi cũng tính toán các giá trị độ lệch chuẩn được sử dụng trong giới hạn trên và giới hạn dưới của phép tính.

Kết quả cho thấy một biểu đồ Bland-Altman là một biểu đồ phân tán.

data mydata;
input new old;
datalines;
31 45
27 12
11 37
36 25
14 8
27 15
3 11
62 42
38 35
20 9
35 54
62 67
48 25
77 64
45 53
32 42
16 19
15 27
22 9
8 38
24 16
59 25
;

data diffs ;
set mydata ;
/* calculate the difference */
diff = new-old ;
/* calculate the average */
mean = (new+old)/2 ;
run ;
proc print data = diffs;
run;

proc sql noprint ;
select mean(diff)-2*std(diff),  mean(diff)+2*std(diff)
into   :lower,  :upper 
from diffs ;
quit;

proc sgplot data = diffs ;
scatter x = mean y = diff;
refline 0 &upper &lower / LABEL = ("zero bias line" "95% upper limit" "95%
lower limit");
TITLE 'Bland-Altman Plot';
footnote 'Accurate prediction with 10% homogeneous error'; 
run ;
quit ;

Khi đoạn mã trên được thực thi, chúng tôi nhận được kết quả sau:

Mô hình nâng cao

Trong mô hình nâng cao của chương trình trên, chúng tôi nhận được sự phù hợp đường cong mức tin cậy 95 phần trăm.

proc sgplot data = diffs ;
reg x = new y = diff/clm clmtransparency = .5;
needle x = new y = diff/baseline = 0;
refline 0 / LABEL = ('No diff line');
TITLE 'Enhanced Bland-Altman Plot';
footnote 'Accurate prediction with 10% homogeneous error'; 
run ;
quit ;

Khi đoạn mã trên được thực thi, chúng tôi nhận được kết quả sau: