Tải bản đầy đủ (.pdf) (28 trang)

Tài liệu hướng dẫn thống kê y học sử dụng SPSS - BIỂU ĐỒ ROC, KHẢO SÁT TESH CHẨN ĐOÁN

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.76 MB, 28 trang )

Tài liệu hướng dẫn
thống kê y học sử dụng SPSS

SPSS
Biểu đồ ROC: khảo sát test chẩn đoán

Lê Đông Nhật Nam


Lời nói đầu
Kì thi tuyển sinh vào đại học Y khoa có thể xem như 1 test chẩn đoán, nhằm xác định những hạt
giống ưu tú nhất có tiềm năng trở thành bác sĩ sau này. Như mọi quy trình sàng lọc khác, kết quả
trúng tuyển dựa hoàn toàn vào 1 giá trị ngưỡng là điểm chuẩn. Cánh cửa vào trường Y khoa thường
hẹp với đa số thí sinh, có nhiều bạn bè tôi thi đến lần thứ 3 mới đỗ. Thời của tôi sau khi thi xong khó
có học sinh nào ăn ngon ngủ yên ngay cả khi họ làm bài tốt, chúng tôi trông chờ điểm chuẩn như một
bản án mà quan tòa phán ra, ai sẽ lên thiên đường và ai sẽ vào hỏa ngục. Có một câu chuyện buồn
về một cô bạn của tôi, khi công bố điểm chuẩn cô ta chỉ thiếu 0,5 điểm và bị đánh trượt. Cô ấy tuyệt
vọng, bị gia đình đánh đập và thậm chí nghĩ đến chuyện tự sát. Nhưng chỉ vài ngày sau, người ta
nâng điểm chuẩn lên 1 điểm để lấy thêm chỉ tiêu. Và cô ta đã trúng tuyển (Cô bạn ấy sau này trở
thành một bác sĩ giỏi).
Trên lâm sàng, đôi khi chúng ta phải đắn đo rất lâu trước một quyết định chẩn đoán. Nhiều lúc, ta
đối chiếu kết quả xét nghiệm với một ngưỡng giá trị mong manh mà dựa vào nó một người có thể
được xem là bình thường hay bệnh lý.
Một điều thú vị là bác sĩ tại VN ngày càng chủ động hơn khi tham gia vào nghiên cứu giá trị chẩn
đoán của các biomarker (dấu chỉ sinh học). Có lẽ sự phát triển về trang thiết bị tại bệnh viện là
nguyên nhân chính. Khái niệm biomarker rất rộng, nó có thể là một thang điểm trong chẩn đoán
hình ảnh, dấu hiệu giải phẫu bệnh lý, nồng độ một protein hay kháng thể trong máu, dấu hịệu sinh
lý, số lượng tế bào viêm, vân vân…Nghiên cứu về biomarker vừa dễ, vừa khó. Dễ dàng ở khâu thu
thập số liệu (bệnh nhân đông, kết quả xét nghiệm có sẵn và phong phú), việc tạo ra đề tài mới cũng
dễ dàng vì chỉ cần có trong tay 1 thiết bị xét nghiệm mới, một biomarker mới là có thể đẻ ra một đề
tài nghiên cứu nào đó cho luận văn tốt nghiệp, nội trú, cao học hay nghiên cứu sinh. Thậm chí 1


người cũng có thể tự mình làm nghiên cứu loại này. Nhưng nghiên cứu về biomarker lại khó trong
việc phân tích số liệu, diễn giải kết quả. Với thiết kế mô tả, case control, ta chỉ cần so sánh giữa
nhóm bệnh và nhóm chứng để tìm sự tăng, giảm … là đủ; nhưng khi đi sâu vào khảo sát giá trị chẩn
đoán, so sánh nhiều biomarker với nhau, có thể phải dùng tới biểu đồ ROC; có nhiều bạn sử dụng
phương pháp này nhưng ít người khai thác hết thông tin mà nó mang lại và xử lý thống kê chính xác,
đến nơi đến chốn. Mặt khác, SPSS là phần mềm thống kê chưa hoàn hảo, nó cho phép vẽ đường
cong ROC, tính AUC nhưng không cho phép phân tích sâu…
Vì thế, trong tài liệu này Bs. Khả Nhi sẽ hướng dẫn các bạn khai thác tối đa thông tin về đường cong
ROC, bao gồm 3 bước :
- Vẽ đường cong ROC và tính diện tích dưới đường cong AUC bằng SPSS
- Xác định điểm cắt tối ưu cho chẩn đoán dựa vào Youden Index J và khoảng cách tối thiểu d
- So sánh 2 AUC khác nhau bằng Phương pháp Hanley-McNeil

Tài liệu được trình bày theo hình thức đơn giản đến mức tối đa để các bạn có thể sử dụng ngay.


Quy ước trình bày
Trong tài liệu này chúng ta sẽ làm quen với 3 nhân vật

Bác sĩ Nguyễn Văn Thái
Bác sĩ Thái là một cao thủ thống kê y học trên giang hồ. Anh ta sẽ xuất
hiện trước mọi vấn đề khó khăn, nhằm đưa ra câu trả lời chính xác và
ôn lại cho bạn những kiến thức cơ bản cũng như chuyên sâu về lý
thuyết thống kê. Tuy nhiên BS Thái lại rất bận rộn nên không đủ thời
gian đi vào cách thực hiện chi tiết. Anh ta cũng hay trình bày lý thuyết
thuần túy và sử dụng nhiều công thức toán học nên không mấy gần gũi
với sinh viên và gây không ít trở ngại cho các bạn vốn dị ứng với thống
kê …

Bác sĩ Lê Ngọc Khả Nhi

Khả Nhi là một nữ bác sĩ trẻ dễ thương và sử dụng thành
thạo SPSS. Như tên gọi của mình, BS Nhi có tính cách rất hồn
nhiên và sống ngây thơ như trẻ con, vì vậy cô luôn có khuynh
hướng đơn giản hóa tối đa mọi vấn đề. Cô ấy sẽ hướng dẫn
các bạn sử dụng SPSS từng bước cụ thể, chia sẻ những mẹo
vặt, thủ thuật để giúp các bạn đi đến kết quả nhanh và dễ
dàng nhất.

Sinh viên Trần Quốc Bảo
Bảo là sinh viên y khoa năm thứ sáu và bắt đầu làm quen với nghiên
cứu khoa học. Đây là một cậu sinh viên rất tò mò và luôn đặt ra
nhiều câu hỏi liên quan đến thống kê. Mặc dù những đế tài do Bảo
thực hiện rất đơn giản, nhưng đồng hành với cậu ta, các bạn có cơ
hội tích lũy cho mình nhiều kinh nghiệm trong công việc phân tích
số liệu và thiết kế nghiên cứu.

3


1

1.1 Tình huống thí dụ
Trong bệnh lý xơ cứng bì hệ thống (systemic sclerosis), tổn thương xơ phổi
rất phổ biến. Dấu hiệu sớm nhất là hiện tượng viêm trong phế nang. Hiện
tượng viêm phế nang được chẩn đoán xác định bằng sự tăng các loại tế bào
viêm trong dịch rửa phế quản, tuy nhiên đây là một xét nghiệm xâm lấn.
Một cách khác để phát hiện viêm phế nang là dựa trên sự tăng nồng độ của
Surfactant protein D (SPD) trong máu (định lượng bằng ELISA). Có nhiều
nghiên cứu đã được làm để xác định ngưỡng giá trị SPD cho phép chẩn đoán
viêm phế nang.


Mới đây, người ta phát hiện rằng nồng độ khí monoxit nitơ (NO) nội sinh
trong hơi thở cũng có thể được sử dụng như biomarker của hiện tượng viêm
đường dẫn khí. Sử dụng một mô hình toán học đặc biệt, ta có thể tính được
nồng độ NO đến từ phế nang, gọi là CANO.
Một bác sĩ muốn khảo sát khả năng chẩn đoán viêm phế nang của 2 loại
biomarker: (1) Surfactant protein D (SPD) trong máu và (2) nồng độ NO phế
nang (CANO). Người ta đo 2 loại biomarker này trên 60 bệnh nhân xơ cứng
bì hệ thống. Hiện tượng viêm phế nang được xác định trên 40 trường hợp.
Câu hỏi nghiên cứu của Bảo:
Surfactant pro-D

1) Đánh giá khả năng chẩn đoán viêm
phế nang của 2 loại biomarker: SPD
(sinh hóa) và CANO (khí thở ra).

CANO

NO phế nang

2) Trong 2 loại, xét nghiệm nào tốt hơn ?

Tế bào viêm

Viêm phế nang
Câu hỏi thứ nhất có thể trả lời bằng cách sử dụng biểu đồ ROC.
Biểu đồ ROC hay còn gọi là đường cong ROC (Receiver operating characteristic).
Đây là một phương pháp khảo sát liên hệ giữa độ nhạy và độ đặc hiệu của một
xét nghiệm. Lợi ích của xét nghiệm có thể được kiểm định bằng cách so sánh
diện tích dưới đường cong ROC (AUC) với giá trị 0,5.

Câu hỏi thứ 2 đặt ra vấn đề so sánh giá trị AUC giữa 2 đường cong ROC khác
nhau. Để làm việc này, ta sẽ sử dụng phương pháp của Hanley-McNeil (1987).


1

1.2 Giới thiệu

Trong nghiên cứu y học, biểu đồ ROC là một phương pháp phân tích trực quan cho liên hệ giữa độ
nhạy và tỉ lệ dương tính giả trong một test chẩn đoán, dựa trên những ngưỡng giá trị chẩn đoán
khác nhau. Phương pháp này được lập ra bởi những kỹ thuật viên radar trong thế chiến thứ II để
phân biệt tín hiệu thật và giả (nhiễu) quyết định độ chính xác của việc phát hiện ra máy bay của
địch.
Trong thực hành lâm sàng, một test chẩn đoán có thể hiểu như 1 quy trình phân loại mang tính nhị
phân, nhằm xác định một cá thể Có hoặc không có bệnh. Thông thường kết quả phân loại phụ
thuộc vào 1 đại lượng với 1 giá trị ngưỡng chẩn đoán xac định. Giá trị của ngưỡng chẩn đoán cao
hay thấp sẽ quyết định tỉ lệ dương tính (âm tính) thật/giả trong 1 quần thể xác định.

Thực chất đường cong ROC chỉ là một trò chơi
về xác suất, bằng cách biểu diễn mối tương
quan giữa 2 đại lượng: Độ nhạy, hay xác suất
chẩn đoán chính xác có bệnh (dương tính thật
trên tổng số bệnh nhân), và (1- độ đặc hiệu),
hay xác suất chẩn đoán nhầm (một người
không có bệnh bị chẩn đoán dương tính).
Khi chẩn đoán dựa trên giá trị của một biến số
định lượng liên tục, việc di chuyển ngưỡng
chẩn đoán và chọn đúng điểm cắt sẽ giúp giảm
tỉ lệ chẩn đoán nhầm (FP) đến mức thấp nhất
đồng thời tăng độ nhạy lên cao nhất.


Biểu đồ ROC được đặc trưng bởi diện tích dưới
đường cong hay AUC. AUC có thể nằm trong
khoảng 0 đến +1, và thông thường ta dùng
ngưỡng 0,5 để đánh giá độ mạnh của test chẩn
đoán dựa vào AUC. AUC càng gần 0,5 thì phương
pháp chẩn đoán càng kém giá trị, AUC càng gần 1
thì test chẩn đoán càng tốt, testhoàn hảo sẽ có
AUC = 1. Phân loại giá trị test chẩn đoán theo
AUC như sau:

AUC = 0,9-1 : Rất tốt, 0,8-0,9 : Tốt; 0,7-0,8 : Trung
bình; 0,6-0,7: Kém; 0,5-0,6: Vô giá trị


1

1.2 Giới thiệu

Việc xác định điểm cắt tối ưu tùy thuộc vào 2 quan
điểm
(1) Mục đích chẩn đoán: Nếu test chẩn đoán có
mục đích xác định bệnh thì ta quan tâm nhiều
đến độ đặc hiệu, trong khi test sàng lọc thì ta
quan tâm đến độ nhạy nhiều hơn.

Điểm cắt tối ưu

(2) Thống kê học thuần túy:
Một điểm cắt tối ưu có thể được xác định bằng

phương pháp toán học, có 2 tiêu chuẩn thường
dùng nhất là:
a) Hệ số J của Youden (Youden index) lớn nhất
b) Khoảng cách d từ điểm cắt tới đỉnh cao nhất
trục tung có giá trị nhỏ nhất

Hệ số J của Youden: J = (Se + Sp)− 1
𝑲𝒉𝒐ả𝒏𝒈 𝒄á𝒄𝒉 𝒅 =

(𝟏 − 𝑺𝒆)𝟐 +(𝟏 − 𝑺𝒑𝒆)𝟐

Phân tích biểu đồ ROC có nhiều ứng dụng như
1) Khảo sát phẩm chất của một 1 đại lượng X có thể dùng để chẩn đoán một bệnh lý F. Trong trường
hợp này ta cần có: giá trị của X cho mỗi cá thể, và kết quả chẩn đoán của cá thể đó (F=0: không có
bệnh, F=1: có bệnh) dựa vào 1 tiêu chuẩn quy ước có sẵn.
Nội dung của quy trình sẽ là:
+ Dựng biểu đồ ROC cho quần thể đang khảo sát. Xác định AUC và so sánh nó với ngưỡng 0,5.
+ Khảo sát tất cả các khả năng có thể của giá trị độ nhạy và độ đặc hiệu tương ứng cho 1 điểm cắt X,
và xác định điểm cắt tối ưu.
2) So sánh khả năng của 2 test chẩn đoán dựa vào AUC:
Lúc này bài toán đặt ra sẽ là so sánh AUC(A) của phương pháp A và AUC(B) của phương pháp B.
Cách giải quyết thường dựa vào trị số U theo Mann-Whitney, vì theo lý thuyết AUC có liên hệ rất gần
với phân phối U trong test Mann-Whitney, theo công thức:
𝐴𝑈𝐶 =

𝑈
𝑛1𝑛2

Trong tài liệu này tác giả hướng dẫn thực hiện thủ công phương pháp Hanley-McNeil (1982) vốn
không được SPSS hỗ trợ. Chỉ có Medcalc và XLSTAT cho phép so sánh AUC một cách tự động.



2

2.1 Tạo bảng số liệu

1
Thiết lập biến số
Nồng độ khí NO phế nang (CANO )là một biến số định lượng kiểu liên tục, giá trị bình thường của CANO
trong khoảng từ 2 – 5 nL/L (hay ppb)
Nồng độ Surfactant protein D là biến số định lượng kiểu liên tục, giá trị bình thường của nó trong khoảng
50-100 ng/mL.
Viêm phế nang là biến số định tính nhị phân với 2 giá trị: 0 = không viêm; 1= có viêm

Qui tắc dán nhãn cho biến số

2

4

3

Nhập số liệu vào bảng

Bạn nhập giá trị 0/1 vào biến Viemphenang, nhưng SPSS
sẽ gán cho con số giá trị phân loại tương ứng mà bạn đã
xác định ở bước 2. Sau đó chỉ cần kích hoạt chức năng
hiển thị nhãn giá trị, bảng số liệu của bạn sẽ trở nên rõ
ràng như hình trên



2

2.2 Vẽ đường cong ROC và tính AUC

2.2.1 Thiết lập cấu hình cho đường cong ROC

1

2
Nhấn tab Analyze, chọn mục ROC curve để mở hộp thoại sau đây:


2

2.2 Vẽ đường cong ROC và tính AUC

Kéo biến số Viemphenang vào ô State variable
Kéo 2 biến số định lượng NO phế nang và Surfactant Pro D vào ô Test variable

Chọn tất cả các mục trong phần « Display », sau đó nhấn OK


2

2.2 Vẽ đường cong ROC và tính AUC
2.2.2 Chỉnh sửa hiệu ứng đồ họa

Trong bảng kết quả, đường cong ROC đã được vẽ ra. Tuy nhiên đây là hình vẽ thô sơ, không thể
đưa ngay vào văn bản khoa học.


1

x2
Nhấp chuột 2 lần vào hình vẽ để mở
cửa sổ chỉnh sửa hiệu ứng đồ họa

x2
a
e

Trong chức năng Chart editor, bạn có
thể nhấp chuột vào từng nhóm thành
phần riêng biệt để chỉnh sửa về màu
sắc, font chữ, thang giá trị và thêm
bớt những yếu tố khác.

c
d

b


2

2.2 Vẽ đường cong ROC và tính AUC
2.2.2 Chỉnh sửa hiệu ứng đồ họa

Chọn
màu nền


3

x2

2

Khi bạn click chuột vào một thành phần nào đó,
ví dụ màu nền, hộp thoại Properties sẽ mở ra

Trước hết, bỏ màu nền cho đồ thị để có nền màu
trắng trong suốt

4

5

Sau đó vào mục « Variables »,

Đổi chế độ Groupe từ «phân biệt 2 đường cong bằng màu sắc
(Style: color)» sang« phân biệt bằng nét đứt (Style: Dash) », kết
quả bạn sẽ có 2 đường cong màu đen, một nét liền và một nét đứt


2.2 Vẽ đường cong ROC và tính AUC

2

2.2.2 Chỉnh sửa hiệu ứng đồ họa
Sau mỗi thay đổi, bạn nhấn Apply để lưu thay đổi và xem kết

quả

8
6

7

x2

Bạn có thể thay đổi tính chất của đường cong, bằng cách nhấp chuột vào nó để mở hộp thoại Line
Properties, sau đó vào mục Variables và chọn Element type = Interpolation Line, tính chất này sẽ cho ra
hình vẽ đẹp hơn


2

2.2 Vẽ đường cong ROC và tính AUC
2.2.2 Chỉnh sửa hiệu ứng đồ họa

9
Sau đó, nhấn tab Interpolation line để
chọn kiểu hiển thị cho đường cong ROC:
Có 2 kiểu hiển thị phổ biến là:
Step: bậc thang liên tục nhảy từ nấc giá
trị Y (độ nhạy) thấp sang giá trị cao hơn
Spline : Áp dụng tính năng hiệu chỉnh để
làm đường cong trở nên mượt mà hơn
Nếu bạn muốn giữ sự chính xác thì dùng
Step, còn nếu bạn muốn có đường cong
đẹp, trơn tru thì dùng Spline.


Kiểu « Spline »

Kiểu « Step »


3

3. Diễn giải kết quả
3.1 kết quả mô tả AUC

Case Processing Summary

Kết quả đường cong ROC bao gồm 3 nội dung chính

Valid N
Viêm phế nang

(listwise)

Positivea

40

Negative

20

Đầu tiên, bảng Case processing summary cho biết số trường hợp
có bệnh (positive case, hay Np) và không có bệnh (negative case

hay Nn).

Larger values of the test result

Giá trị Nn và Np ta sẽ cần đến khi so sánh 2 AUC bằng PP
Hanley-McNeil sau này

variable(s) indicate stronger
evidence for a positive actual
state.
a. The positive actual state is

Area Under the Curve

Có.
Asymptotic 95% Confidence
Interval

Asymptotic
Test Result Variable(s)

Area

Std. Errora

Sig.b

Lower Bound

Upper Bound


NO phế nang (ppb)

,892

,041

,000

,813

,972

Surfactant Pro D (ng/ml)

,749

,062

,002

,627

,870

The test result variable(s): NO phế nang (ppb), Surfactant Pro D (ng/ml) has at least one tie
between the positive actual state group and the negative actual state group. Statistics may be
biased.
a. Under the nonparametric assumption
b. Null hypothesis: true area = 0.5


Diện tích dưới
đường cong (AUC)
cho mỗi biomarker

SE của mỗi AUC

Giá trị p của kiểm
định « đường cong
có khác biệt ý nghĩa
so với ngưỡng 0.5

Khoảng tin cậy 95%
của AUC

Tiếp theo, bảng Area under Curve trình bày thông tin về AUC của tất cả biến số mà ta muốn
khảo sát. Trong bảng này, ta quan tâm đến: Giá trị của AUC (kèm theo SD, SE, CI95% )

AUC có thể nằm trong khoảng 0 đến +1, tuy nhiên ta dùng ngưỡng 0,5 để so sánh, AUC càng
gần 0,5 thì phương pháp chẩn đoán càng kém giá trị, AUC càng gần 1 thì PP chẩn đoán càng
tốt, PP hoàn hảo sẽ có AUC = 1. Phân loại giá trị test chẩn đoán theo AUC như sau:
AUC = 0,9-1 : Rất tốt, 0,8-0,9 : Tốt; 0,7-0,8 : Trung bình; 0,6-0,7: Kém; 0,5-0,6: Vô giá trị
Thứ hai là giá trị p của kiểm định so sánh., với giả thuyết 0 là AUC = 0,5. p<0,05 chứng tỏ AUC
có khác biệt ý nghĩa so với ngưỡng 0,5.


3

3. Diễn giải kết quả
3.2 Khai thác thông tin từ bảng mô tả điểm cắt

Giá trị của điểm cắt chẩn đoán
Coordinates of the Curve
Positive if
Greater Than or
Test Result Variable(s)
NO phế nang (ppb)

Tên biến số
khảo sát

Equal To

a

Sensitivity

1 - Specificity

1,5000

1,000

1,000

2,5500

1,000

,950


2,7500

1,000

,900

3,0000

1,000

,850

3,1500

1,000

,800

3,3500

,975

,800

3,6000

,950

,750


3,7500

,950

,700

3,9000

,950

,650

4,0500

,950

,600

4,2000

,950

,550

4,4500

,925

,500


4,8000

,925

,450

5,0500

,875

,400

5,1500

,875

,350

5,3000

,875

,300

5,5500

,875

,250


5,8500

,875

,200

6,1000

,850

,200

6,3500

,825

,150

6,6500

,800

6,9000

,775

,150

7,1000


,750

,150

7,3500

,725

,150

8,2500

,675

,050

(1-Độ đặc hiệu)
tương ứng với mỗi điểm cắt

,150
Độ nhạy tương ứng với
mỗi điểm cắt

Cuối cùng là bảng phân tích chi tiết các điểm
cắt,700
bao gồm,100giá trị điểm cắt, độ nhạy và (1-Độ đặc hiệu)
7,7500
cho từng điểm.
8,1000
,675

,100
8,4000
,050
Bảng này sẽ giúp chúng ta lựa chọn điểm
cắt tối ,650
ưu, tuy nhiên
đây chỉ là số liệu thô và khó diễn giải.
8,8500
,625
,050
Trong phần tiếp theo tôi sẽ hướng dẫn các bạn khai thác số liệu trong bảng này trên phần mềm Excel.
9,3500

,600

,050

9,5050

,600

,000

9,6150

,575

,000



3

3. Diễn giải kết quả
3.3 Xác định điểm cắt tối ưu
4
1

Positive if
Greater Than or
Test Result Variable(s)
NO phế nang (ppb)

2

Equal To

a

Sensitivity

1 - Specificity

1,5000

1,000

1,000

2,5500


1,000

,950

2,7500

1,000

,900

3,0000

1,000

,850

3,1500

1,000

,800

3,3500

,975

,800

3,6000


,950

,750

3,7500

,950

,700

3,9000

,950

,650

4,0500

,950

,600

4,2000

,950

,550

4,4500


,925

,500

4,8000

,925

,450

5,0500

,875

,400

5,1500

,875

,350

5,3000

,875

,300

5,5500


,875

,250

5,8500

,875

,200

6,1000

,850

,200

6,3500

,825

,150

6,6500

,800

,150

6,9000


,775

,150

7,1000

,750

,150

7,3500

,725

,150

7,7500

,700

,100

8,1000

,675

,100

8,2500


,675

,050

8,4000

,650

,050

8,8500

,625

,050

9,3500

,600

,050

9,5050

,600

,000

9,6150


,575

,000

9,8600

,550

,000

3

Điểm cắt

Se

(1-Sp)

Sp

Youden khoảng cách
index J (d)

1) Đầu tiên, trong Excel bạn tạo bảng tính gồm 6 cột như trong hình vẽ, bạn có thể lập trình công thức
Tính tự động: Specificity , Hệ số J của Youden và khoảng cách d
2) Sau đó bạn quay trở lại bảng kết quả Cut-off point trong SPSS,
3) cắt toàn bộ kết quả của 3 cột : Cut-off value, Sensitivity và Specificity và dán qua bảng Excel.
4) Dùng chức năng xếp thứ tự của Excel:
Đầu tiên, chọn toàn bộ cột Youden Index J, xếp thứ tự từ cao đến thấp : Bạn ghi lại 3 điểm cắt đầu tiên
(có giá trị J cao nhất)

Sau đó, bạn chọn toàn bộ cột « khoảng cách d », rồi xếp thứ tự từ thấp đến cao, bạn cũng ghi lại 3 điểm
cắt đầu tiên có giá trị d thấp nhất
Điểm cắt tối ưu chính là điểm cắt tương ứng với: J max và/hoặc d min


3

3. Diễn giải kết quả
3.3 Xác định điểm cắt tối ưu

Cut-off point
5,85
6,35
6,65
Cut-off point
6,35
5,85

Sensitivity
0,875
0,825
0,8
Sensitivity
0,825
0,875

1-Specificity
0,2
0,15
0,15

1-Specificity
0,15
0,2

Specificity
0,8
0,85
0,85
Specificity
0,85
0,8

Youden index J
0,675
0,675
0,65
Youden index J
0,675
0,675

Distance d
0,230488611
0,235849528

Ví dụ: đối với biến số CANO, ta có:
Giá trị J max = 0,675 tương ứng với 2 điểm cắt: CANO = 5,85 và 6,35
Giá trị d min = 0,230 tương ứng với điểm cắt CANO = 6,35
Như vậy ta kết luận: Điểm cắt tối ưu cho CANO là 6,35 ppb

Cut-off point

247
263,5
237
278,5

Cut-off point
247
263,5
237

Sensitivity
0,675
0,65
0,675
0,625

Sensitivity
0,675
0,65
0,675

1-Specificity
0,15
0,15
0,2
0,15

1-Specificity
0,15
0,15

0,2

Specificity
0,85
0,85
0,8
0,85

Specificity
0,85
0,85
0,8

Youden index J
0,525
0,5
0,475
0,475

Youden index J
0,525
0,5
0,475

Tương tự cho Surfactant protein D: Ta xác định được điểm cắt tối ưu là 247 ng/ml

Distance d
0,357945527
0,380788655
0,381608438



4

So sánh 2 AUC bằng phương pháp Hanley-McNeil

Năm 1983, hai bác sĩ hình ảnh học James A.
Hanley và Barbara J McNeil đề xuất một phương
pháp (PP) thống kê cho phép so sánh 2 giá trị
AUC của 2 test chẩn đoán khác nhau. PP của họ
dựa trên lập luận là AUC có đặc tính rất giống test
kiểm định Wilcoxon rank signed và Mann
Whitney.
Do PP này chưa có trong SPSS, nên chúng ta phải
làm thủ công theo từng bước như sau:
Trường hợp 1: So sánh không cùng mẫu
Nếu bạn so sánh AUC do bạn tìm ra và AUC của một nghiên cứu khác (không cùng bệnh nhân); so
sánh gồm có 3 bước:

1

Tính Standard error cho mỗi AUC (giá trị này SPSS đã cung cấp), hoặc bạn cũng có thể tính thủ công:

𝑆𝐸 𝐴 =

𝐴
2𝐴2
𝐴 1 − 𝐴 + 𝑁𝑝 − 1 ∗ 2 − 𝐴 − 𝐴2 + 𝑁𝑛 − 1 ∗ (1 + 𝐴 − 𝐴2 )
𝑁𝑝 ∗ 𝑁𝑛


Ghi chú: Np và Nn = số trường hợp có bệnh (positive) và không bệnh (negative)

2

Tính SE cho khác biệt giữa 2 AUC : SE (A1-A2)
𝑆𝐸 𝐴1 − 𝐴2 =

𝑆𝐸(𝐴1)2 + 𝑆𝐸(𝐴2)2

Ghi chú: SE(A1) và SE(A2) lần lượt là SE của AUC test chẩn đoán 1 và AUC của test chẩn đoán 2

3

Tính Z-score
𝑍=

4

𝐴1 − 𝐴2
𝑆𝐸 (𝐴1 − 𝐴2)

So sánh giá trị tuyệt đối của Z-score và 1,96 :
Nếu Z < 1,96: Không có sự khác biệt ý nghĩa
> 1,96: có sự khác biệt ý nghĩa giữa AUC1 và AUC2

5

Tính giá trị P từ Z-score theo phân phối Gaussian: Trong Excel giá trị P tính bằng hàm số DISTNORM(1-Z)
P<0,05 : có ý nghĩa thống kê



4

So sánh 2 AUC bằng phương pháp Hanley-McNeil

Vì SPSS không hỗ trợ PP so sánh Hanley-McNeil nên tác giả đã tạo một công cụ tự động giúp bạn
so sánh dễ dàng 2 diện tích đường cong ROC trong trường hợp 1 (so sánh khác mẫu) và 2 (so
sánh đồng mẫu)
Đối với trường hợp 1 (so sánh khác mẫu), mọi việc rất đơn giản, bạn chỉ cần nhập số liệu vào 6
ô: Np, Nn, AUC cho 2 test chẩn đoán, chương trình sẽ tính tự động Z-score và giá trị p cho bạn

So sánh AUC của 2 mẫu khác nhau
Tổng số case có bệnh
Tổng số case không có bệnh
AUC
Kết quả kiểm định Hanley-McNeil
Standard error của [AUC(A) - AUC(B)]
SD của [AUC(A) - AUC(B)]
Z score
P value (one-tailed)

Diễn giải kết quả:

Nhập dữ liệu vào 6 ô dưới đây
Phương pháp A
Phương pháp B
40
40
20
20

0,892
0,749

0,142973433
0,018457791
1,000185818
0,158610296

Ghi chú
Abs(Z) > 1,96: có ý nghĩa (p<0,05)
Abs(Z) < 1,96: không có ý nghĩa (p>0,05)
Zscore < 0: AUC1 < AUC2 và ngược lại
Không cần dùng bảng Hanley McNeils

Không có sự khác biệt ý nghĩa về AUC giữa 2 biomarker: CANO và Surfactant protein D
(Z=1,0; p=0,159)
Kết luận: Giá trị chẩn đoán của 2 biomarker là tương đương với nhau


4

So sánh 2 AUC bằng phương pháp Hanley-McNeil

Trường hợp 2: So sánh đồng mẫu
Nếu bạn so sánh 2 AUC của 2 test chẩn đoán khác nhau dựa trong cùng một nghiên cứu (thực
hiện trên cùng 1 bệnh nhân)

1

Tính Standard error cho mỗi AUC (giá trị này SPSS đã cung cấp), hoặc bạn cũng có thể tính thủ công:


𝑆𝐸 𝐴 =

𝐴
2𝐴2
𝐴 1 − 𝐴 + 𝑁𝑝 − 1 ∗ 2 − 𝐴 − 𝐴2 + 𝑁𝑛 − 1 ∗ (1 + 𝐴 − 𝐴2 )
𝑁𝑝 ∗ 𝑁𝑛

Ghi chú: Np và Nn = số trường hợp có bệnh (positive) và không bệnh (negative)

2

Xác định hệ số tương quan giữa 2 biến số cần khảo sát trong 2 trường hợp:
Rn: hệ số tương quan ở những người không có bệnh
Rp: hệ số tương quan ở những người có bệnh
Ghi chú: Nếu biến số cần khảo sát thuộc loại liên tục, ta dùng hệ số R của Pearson
Nếu biến số không liên tục (thứ hạng, thang điểm), ta dùng hệ số tương quan Kendall tau
Sau đó ta tính Rn,p trung bình = (Rn+Rp)/2

3

Sử dụng bảng Hanley-McNeil để xác định hệ số tương quan r giữa AUC1 và AUC2

4

Tính SE cho khác biệt giữa 2 AUC : SE (A1-A2)
𝑆𝐸 𝐴1 − 𝐴2 =

𝑆𝐸(𝐴1)2 + 𝑆𝐸(𝐴2)2 − 𝟐𝑟 ∗ 𝑆𝐸 𝐴1 ∗ 𝑆𝐸(𝐴2)


Ghi chú: SE(A1) và SE(A2) lần lượt là SE của AUC test chẩn đoán 1 và AUC của test chẩn đoán 2
Giá trị của r được xác định từ bảng Hanley-McNeil

5

Tính Z-score
𝑍=

6

𝐴1 − 𝐴2
𝑆𝐸 (𝐴1 − 𝐴2)

So sánh giá trị tuyệt đối của Z-score và 1,96 :
Nếu Z < 1,96: Không có sự khác biệt ý nghĩa
> 1,96: có sự khác biệt ý nghĩa giữa AUC1 và AUC2

Tính giá trị P từ Z-score theo phân phối Gaussian: Trong Excel giá trị P tính bằng hàm số DISTNORM(1-Z)
P<0,05 : có ý nghĩa thống kê


4

So sánh 2 AUC bằng phương pháp Hanley-McNeil

Vì SPSS không hỗ trợ PP so sánh Hanley-McNeil nên tôi đã tạo một công cụ tự động giúp bạn so
sánh dễ dàng 2 diện tích đường cong ROC trong trường hợp 1 (so sánh khác mẫu) và 2 (so sánh
đồng mẫu)
Đối với trường hợp 2 (so sánh cùng mẫu), bạn cần quay trở lại SPSS làm thêm 1 số bước sau:
1


2

3

4
Nhấn tab Analyze, chọn mục
Correlate  Bivariate
Trong hộp thoại Bivariate
correlation, bạn kéo 2biến số
cần khảo sát vào ô Variables
Nhấn nút Paste để mở cửa sổ
Syntax editor

5


4

So sánh 2 AUC bằng phương pháp Hanley-McNeil

Trong cửa sổ Syntax Editor, bạn dán thêm những lệnh sau đây phía dưới dòng lệnh đang có
USE ALL.
COMPUTE filter_$=(Viemphenang=0).
VARIABLE LABELS filter_$ 'Viemphenang=0 (FILTER)'.
VALUE LABELS filter_$ 0 'Not Selected' 1 'Selected'.
FORMATS filter_$ (f1.0).
FILTER BY filter_$.
EXECUTE.
CORRELATIONS

/VARIABLES=CANO SPD
/PRINT=TWOTAIL NOSIG
/MISSING=PAIRWISE.
USE ALL.
COMPUTE filter_$=(Viemphenang=1).
VARIABLE LABELS filter_$ 'Viemphenang=1 (FILTER)'.
VALUE LABELS filter_$ 0 'Not Selected' 1 'Selected'.
FORMATS filter_$ (f1.0).
FILTER BY filter_$.
EXECUTE.
CORRELATIONS
/VARIABLES=CANO SPD
/PRINT=TWOTAIL NOSIG
/MISSING=PAIRWISE.

Copy và paste vào đây
6

Ghi chú:
Các lệnh trên để thực hiện quy trình tính hệ số tương quan Pearson trong 2 trường hợp: 1) Lọc bỏ tất
cả case không có bệnh và 2) Lọc bỏ tất cả case có bệnh.
Những chữ màu đỏ là tên biến số trong thí dụ, khi bạn làm cho nghiên cứu khác thì thay đổi tên biến lại
cho phù hợp
Qui trình này nhằm xác định Rn và Rp trong PP của Hanley-McNeil


4

So sánh 2 AUC bằng phương pháp Hanley-McNeil


7

Nhấn Tab « Run » và chọn « All » để thi hành tất cả khối lệnh vừa dán vào


4

So sánh 2 AUC bằng phương pháp Hanley-McNeil

Kết quả SPSS sẽ cho ra giá trị của Rn và Rp
Correlations

NO phế nang (ppb)

NO phế nang

Surfactant Pro

(ppb)

D (ng/ml)

1

,988**

Pearson Correlation
Sig. (2-tailed)

Giá trị Rn


,000

N
Surfactant Pro D (ng/ml) Pearson Correlation
Sig. (2-tailed)

20

20

,988**

1

,000

N

20

20

NO phế nang

Surfactant Pro

(ppb)

D (ng/ml)


1

,982**

**. Correlation is significant at the 0.01 level (2-tailed).
Correlations

NO phế nang (ppb)

Pearson Correlation
Sig. (2-tailed)
N

Surfactant Pro D (ng/ml) Pearson Correlation
Sig. (2-tailed)
N

Giá trị Rp

,000
40

40

,982**

1

,000

40

40

Giá trị R trung bình

**. Correlation is significant at the 0.01 level (2-tailed).

So sánh AUC của cùng 1 mẫu
Nhập dữ liệu vào 7 ô dưới đây
AUC của Phương pháp A
0,892
AUC của Phương pháp B
0,749
8
Hệ số tương quan rp ở nhóm bệnh
0,982
Hệ số tương quan rn ở nhóm không bệnh
0,988
Tổng số case có bệnh (Np)
40
Tổng số case không bệnh (Nn)
20
Hệ số r của Hanley-McNeil
0,98
Kết quả kiểm định Hanley-McNeil
Standard error của [AUC(A) - AUC(B)]
SD của [AUC(A) - AUC(B)]
Z score
P value (one-tailed)


Xem bảng Hanley McNeils để xác định hệ số r
dựa vào (rp+rn)/2 và (A1+A2)/2
(A1+A2)/2=
0,8205
(rp+rn)/2=
0,985

0,09750302
0,012587586
1,466621241
0,071239559

Ghi chú
Abs(Z) > 1,96: có ý nghĩa (p<0,05)
Abs(Z) < 1,96: không có ý nghĩa (p>0,05)
Zscore < 0: AUC1 < AUC2 và ngược lại

Bạn mở công cụ so sánh AUC trên Excel, chọn trường hợp so sánh đồng mẫu,
sau đó nhập vào 4 giá trị: AUC1, AUC2, Rn, np,Np, Nn


4

So sánh 2 AUC bằng phương pháp Hanley-McNeil
(A1+A2)/2
.700 .725 .750 .775 .800 .825 .850 .875 .900 .925 .950 .975

(rn+rp)/2
(rn+rp)/2

(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2

(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/2
(rn+rp)/3
(rn+rp)/4
(rn+rp)/5
(rn+rp)/6
(rn+rp)/7

0.02 0.02 0.02 0.02 0.02 0.02 0.02 0.02 0.01 0.01 0.01 0.01 0.01
0.04 0.04 0.04 0.03 0.03 0.03 0.03 0.03 0.03 0.03 0.02 0.02 0.02
0.06 0.05 0.05 0.05 0.05 0.05 0.05 0.05 0.04 0.04 0.04 0.03 0.02
0.08 0.07 0.07 0.07 0.07 0.07 0.06 0.06 0.06 0.06 0.05 0.04 0.03
0.10 0.09 0.09 0.09 0.09 0.08 0.08 0.08 0.07 0.07 0.06 0.06 0.04
0.12 0.11 0.11 0.11 0.10 0.10 0.10 0.09 0.09 0.08 0.08 0.07 0.05
0.14 0.13 0.12 0.12 0.12 0.12 0.11 0.11 0.11 0.10 0.09 0.08 0.06
0.16 0.14 0.14 0.14 0.14 0.13 0.13 0.13 0.12 0.11 0.11 0.09 0.07
0.18 0.16 0.16 0.16 0.16 0.15 0.15 0.14 0.14 0.13 0.12 0.11 0.09
0.20 0.18 0.18 0.18 0.17 0.17 0.17 0.16 0.15 0.15 0.14 0.12 0.10
0.22 0.20 0.20 0.19 0.19 0.19 0.18 0.18 0.17 0.16 0.15 0.14 0.11

0.24 0.22 0.22 0.21 0.21 0.21 0.20 0.19 0.19 0.18 0.17 0.15 0.12
0.26 0.24 0.23 0.23 0.23 0.22 0.22 0.21 0.20 0.19 0.18 0.16 0.13
0.28 0.26 0.25 0.25 0.25 0.24 0.24 0.23 0.22 0.21 0.20 0.18 0.15
0.30 0.27 0.27 0.27 0.26 0.26 0.25 0.25 0.24 0.23 0.21 0.19 0.16
0.32 0.29 0.29 0.29 0.28 0.28 0.27 0.26 0.26 0.24 0.23 0.21 0.18
0.34 0.31 0.31 0.31 0.30 0.30 0.29 0.28 0.27 0.26 0.25 0.23 0.19
0.36 0.33 0.33 0.32 0.32 0.31 0.31 0.30 0.29 0.28 0.26 0.24 0.21
0.38 0.35 0.35 0.34 0.34 0.33 0.33 0.32 0.31 0.30 0.28 0.26 0.22
0.40 0.37 0.37 0.36 0.36 0.35 0.35 0.34 0.33 0.32 0.30 0.28 0.24
0.42 0.39 0.39 0.38 0.38 0.37 0.36 0.36 0.35 0.33 0.32 0.29 0.25
0.44 0.41 0.40 0.40 0.40 0.39 0.38 0.38 0.37 0.35 0.34 0.31 0.27
0.46 0.43 0.42 0.42 0.42 0.41 0.40 0.39 0.38 0.37 0.35 0.33 0.29
0.48 0.45 0.44 0.44 0.43 0.43 0.42 0.41 0.40 0.39 0.37 0.35 0.30
0.50 0.47 0.46 0.46 0.45 0.45 0.44 0.43 0.42 0.41 0.39 0.37 0.32
0.52 0.49 0.48 0.48 0.47 0.47 0.46 0.45 0.44 0.43 0.41 0.39 0.34
0.54 0.51 0.50 0.50 0.49 0.49 0.48 0.47 0.46 0.45 0.43 0.41 0.36
0.56 0.53 0.52 0.52 0.51 0.51 0.50 0.49 0.48 0.47 0.45 0.43 0.38
0.58 0.55 0.54 0.54 0.53 0.53 0.52 0.51 0.50 0.49 0.47 0.45 0.40
0.60 0.57 0.56 0.56 0.55 0.55 0.54 0.53 0.52 0.51 0.49 0.47 0.42
0.62 0.59 0.58 0.58 0.57 0.57 0.56 0.55 0.54 0.53 0.51 0.49 0.45
0.64 0.61 0.60 0.60 0.59 0.59 0.58 0.58 0.57 0.55 0.54 0.51 0.47
0.66 0.63 0.62 0.62 0.62 0.61 0.60 0.60 0.59 0.57 0.56 0.53 0.49
0.68 0.65 0.64 0.64 0.64 0.63 0.62 0.62 0.61 0.60 0.58 0.56 0.51
0.70 0.67 0.66 0.66 0.66 0.65 0.65 0.64 0.63 0.62 0.60 0.58 0.54
0.72 0.69 0.69 0.68 0.68 0.67 0.67 0.66 0.65 0.64 0.63 0.60 0.56
0.74 0.71 0.71 0.70 0.70 0.69 0.69 0.68 0.67 0.66 0.65 0.63 0.59
0.76 0.73 0.73 0.72 0.72 0.72 0.71 0.71 0.70 0.69 0.67 0.65 0.61
0.78 0.75 0.75 0.75 0.74 0.74 0.73 0.73 0.72 0.71 0.70 0.68 0.64
0.80 0.77 0.77 0.77 0.76 0.76 0.76 0.75 0.74 0.73 0.72 0.70 0.67
0.82 0.79 0.79 0.79 0.79 0.78 0.78 0.77 0.77 0.76 0.75 0.73 0.70

0.84 0.82 0.81 0.81 0.81 0.81 0.80 0.80 0.79 0.78 0.77 0.76 0.73
0.86 0.84 0.84 0.83 0.83 0.83 0.82 0.82 0.81 0.81 0.80 0.78 0.75
0.88 0.86 0.86 0.86 0.85 0.85 0.85 0.84 0.84 0.83 0.82 0.81 0.79
0.90 0.88 0.88 0.88 0.88 0.87 0.87 0.87 0.86 0.86 0.85 0.84 0.82
0,92 0,90 0,90 0,90 0,90 0,90 0,89 0,89 0,89 0,88 0,88 0,87 0,86
0,94 0,92 0,92 0,92 0,92 0,92 0,92 0,91 0,91 0,91 0,90 0,90 0,89
0,96 0,94 0,94 0,94 0,94 0,94 0,94 0,94 0,93 0,93 0,93 0,92 0,92
0,98 0,96 0,96 0,96 0,96 0,96 0,96 0,96 0,96 0,95 0,95 0,95 0,94
1,0 0,98 0,98 0,98 0,98 0,98 0,98
9 0,98 0,98 0,98 0,97 0,97 0,97

Chỉ còn lại tham số cuối cùng là r, giá trị
của r được xác định nhớ vào bảng HanleyMcNeil
Trong thí dụ này:
(A1+A2)/2 = 0,82
Và (Rn+Rp)/2 = 0,985

Như vậy r nằm giữa 0,97 và 0,98, ta chọn
giá trị r=0,98


×