ทำความเข้าใจกราฟ Bland–Altman: agreement, bias และเลือกใช้ percent หรือ absolute เมื่อไร

กราฟ Bland–Altman (BA) ตอบคำถามที่ใช้งานได้จริงเพียงข้อเดียวคือ “วิธีวัดสองวิธีนี้ ใช้แทนกันได้ไหม?” มันคือเครื่องมือมาตรฐานของการศึกษาแบบ เปรียบเทียบวิธีวัด (method comparison / agreement) เช่น เครื่องใหม่เทียบเครื่องมาตรฐาน การตรวจข้างเตียงเทียบกับแล็บ หรือผู้วัดคนหนึ่งเทียบกับอีกคน บทความนี้จะค่อย ๆ ประกอบกราฟขึ้นมาใหม่ ให้เห็นว่ามัน คำนวณเป็นตัวเลข อะไรออกมาบ้าง (ไม่ใช่แค่ดูรูป) พร้อมตัวอย่างจริง และสอนให้คุณ อ่าน “รูปแบบ” ไม่กี่แบบที่บอกว่าอะไรผิดและต้องแก้อย่างไร
แนวคิดเดียวที่ต้องจำให้ขึ้นใจ
ค่าสหสัมพันธ์ (correlation, $r$) สูง ไม่ได้แปลว่า agreement ดี สองวิธีอาจ correlate กันเกือบสมบูรณ์ แต่ยังต่างกันมากจนอันตรายทางคลินิกได้ เพราะ correlation บอกแค่ว่าทั้งคู่ “ขยับไปด้วยกัน” ไหม ส่วน agreement บอกว่าให้ “ค่าเท่ากัน” ไหม — Bland–Altman สร้างมาเพื่อวัดอย่างหลัง
1) กายวิภาคของกราฟ Bland–Altman
เอาผู้ป่วยทุกคนที่ถูกวัดด้วย ทั้งสองวิธี มา แล้วสำหรับแต่ละคนคำนวณสองค่าเพื่อลงจุดเดียว:
- แกน x — ค่าเฉลี่ยของสองวิธี $\frac{\text{ใหม่}+\text{มาตรฐาน}}{2}$ ใช้เป็นตัวแทนค่าจริงของคนนั้น (ปกติเราไม่รู้ค่าจริง จึงใช้ค่าเฉลี่ยแทน)
- แกน y — ผลต่าง $\text{ใหม่}-\text{มาตรฐาน}$ คือความไม่ลงรอยของคนคนนั้น
จากนั้นลากเส้นแนวนอนสามเส้นจากผลต่างเหล่านี้:
- bias (ผลต่างเฉลี่ย $\bar d$) — ช่องว่างเฉลี่ยระหว่างสองวิธี
- ขอบบนและขอบล่าง — limits of agreement (LOA) $\bar d \pm 1.96\,s_d$ โดย $s_d$ คือ SD ของผลต่าง แถบที่แรเงาระหว่างสองเส้นนี้คือบริเวณที่ผลต่างรายบุคคลราว 95% จะตกอยู่
2) Bland–Altman ให้ “ตัวเลข” ออกมา ไม่ใช่แค่ดูรูป
นี่คือจุดที่คนมองข้ามบ่อยที่สุด กราฟคือ ภาพ แต่การวิเคราะห์ให้ชุด ตัวเลขที่ต้องรายงาน ออกมาด้วย และตัวเลขเหล่านี้ต่างหาก — ไม่ใช่การกวาดตามองเมฆจุด — คือสิ่งที่เขียนลงเปเปอร์และใช้ตัดสิน
ตัวอย่างจริง เทียบเครื่องวัดน้ำตาลใหม่กับแล็บใน $N$ คู่การวัด ผลที่ได้คือ:
Bias $\bar d = +2.0$ mg/dL, SD ของผลต่าง $s_d = 5.0$ mg/dL ดังนั้น limits of agreement $= 2.0 \pm 1.96 \times 5.0 = $ −7.8 ถึง +11.8 mg/dL
แปลเป็นภาษาคน: โดยเฉลี่ย เครื่องใหม่อ่านสูงกว่าแล็บ $2$ mg/dL แต่ใน ผู้ป่วยรายคน ความต่างจริง ๆ อาจแกว่งตั้งแต่ราว $8$ ต่ำกว่า ถึง $12$ สูงกว่าแล็บ — bias บอกแนวโน้มเป็นระบบ ส่วน LOA บอกว่าค่ารายคนเหวี่ยงได้ไกลแค่ไหน ทั้งคู่ออกมาจากข้อมูลโดยตรง ส่วนกราฟแค่ช่วยให้เห็นว่า เชื่อสองตัวเลขนี้แล้วปลอดภัยหรือไม่
เทมเพลตการรายงาน (ใช้ได้เลย)
“เราเปรียบเทียบวิธีใหม่กับวิธีมาตรฐานใน $N$ คู่การวัด ความต่างเฉลี่ย (bias) เท่ากับ $+2.0$ mg/dL (95% CI …) โดยมี 95% limits of agreement ตั้งแต่ $-7.8$ ถึง $+11.8$ mg/dL และจากกราฟไม่พบ proportional bias ชัดเจน ค่า LOA อยู่ภายในเกณฑ์ที่ยอมรับได้ทางคลินิกที่กำหนดไว้ล่วงหน้าที่ $\pm X$ mg/dL จึง (ใช้/ไม่ใช้) แทนกันได้”
เรื่อง 95% CI ควรพูดสักประโยค: bias มี standard error $s_d/\sqrt{N}$ ส่วนขอบ LOA แต่ละเส้นกว้างกว่าอย่างเห็นได้ชัด (ราว $1.71\,s_d/\sqrt{N}$ หรือราว $1.7\times$ ของ SE ของ bias) ถ้ากลุ่มตัวอย่างเล็ก ขอบเองก็ไม่แน่นอน — เป็นเหตุผลที่ไม่ควรเชื่อแถบแคบ ๆ จาก $n=12$ มากเกินไป
3) อ่านกราฟ — และตัดสินทางคลินิก
อ่านกราฟ BA ใด ๆ ด้วยสี่ขั้น:
- bias ใกล้ศูนย์ไหม? ถ้าเส้น bias อยู่ห่าง $0$ มาก แปลว่าวิธีหนึ่งสูง/ต่ำกว่าอย่างเป็นระบบ
- LOA ยอมรับได้ทางคลินิกไหม? นี่คือการตัดสินที่สำคัญที่สุด (ดูด้านล่าง)
- มีรูปแบบ (pattern) ไหม? เมฆแบนสุ่ม = noise; แถบเลื่อนขนาน = constant bias; เอียง/บานออก = proportional bias (หัวข้อ 5–7)
- สเกลเหมาะไหม? ถ้ากราฟ absolute บานออก ให้เปลี่ยนไปใช้แบบ percent หรือ log (หัวข้อ 6)
ขอบ LOA ตัดสินด้วยเกณฑ์คลินิก ไม่ใช่ค่า p
คำถามที่ว่า “ขอบแคบพอไหม?” ไม่มีคำตอบทางสถิติ มีแต่คำตอบทางคลินิก คุณต้องกำหนดเกณฑ์ที่ยอมรับได้ ก่อน ทำการศึกษา แล้วเทียบ LOA กับเกณฑ์นั้น:
- น้ำหนักตัว: ต่างกัน $\pm 1$ kg มักไม่เป็นไร
- โพแทสเซียมในเลือด: ต่างกัน $\pm 1$ mmol/L อาจอันตราย เพราะกินช่วงตั้งแต่ปกติถึงขั้นวิกฤต
- ความดันโลหิต: ต่างกัน $\pm 10$ mmHg อาจพลิกการวินิจฉัย hypertension ได้
LOA ค่าเดียวกันอาจ “รับได้” กับค่าหนึ่ง แต่ “ใช้ไม่ได้” กับอีกค่าหนึ่ง อย่ารายงานขอบโดยไม่เทียบกับ ความต่างที่ยอมรับได้ทางคลินิกที่ตั้งไว้ล่วงหน้า
4) การคำนวณรายบุคคล
สำหรับผู้ป่วยคนที่ $i$ ที่มีค่าวิธีใหม่ $x_i$ และค่ามาตรฐาน $y_i$:
$$\text{mean}_i=\frac{x_i+y_i}{2}, \qquad d_i=x_i-y_i, \qquad \text{pct}_i = 100\times\frac{x_i-y_i}{(x_i+y_i)/2}$$
แล้วสรุปทั้งกลุ่ม: bias $\bar d=\operatorname{mean}(d_i)$, การกระจาย $s_d=\operatorname{SD}(d_i)$ และ $\text{LOA}=\bar d\pm 1.96\,s_d$ ลองหนึ่งคนตั้งแต่ต้นจนจบ: ใหม่ $=120$, มาตรฐาน $=118$ → mean $=119$, ผลต่าง $=+2$ mg/dL, เปอร์เซ็นต์ $=100\times 2/119 \approx 1.7\%$
5) Fixed bias เทียบกับ proportional bias
ความคลาดเคลื่อนเป็นระบบสองแบบนี้หน้าตาบนกราฟต่างกันสิ้นเชิง และต้องแก้คนละวิธี
Fixed bias (ค่าคงที่) คือต่างเท่ากันทุกระดับ สมมติเครื่องใหม่อ่านสูงไป $2$ หน่วยเสมอ:
| มาตรฐาน | ใหม่ | ผลต่าง |
|---|---|---|
| 10 | 12 | +2 |
| 50 | 52 | +2 |
| 100 | 102 | +2 |
| 200 | 202 | +2 |
บนกราฟคือ แถบแบนที่เลื่อนห่างจากศูนย์ ส่วน proportional bias จะโตขึ้นตามขนาดของค่าที่วัด เช่น เครื่องใหม่อ่านสูงราว $10\%$ เสมอ:
| มาตรฐาน | ใหม่ | ผลต่าง (หน่วย) | ผลต่าง (%) |
|---|---|---|---|
| 10 | 11 | +1 | +9.5% |
| 50 | 55 | +5 | +9.5% |
| 100 | 110 | +10 | +9.5% |
| 200 | 220 | +20 | +9.5% |
ผลต่างแบบหน่วยไต่ขึ้น $+1 \to +5 \to +10 \to +20$ ทั้งที่ความคลาดเคลื่อนคงที่ราว $10\%$ ของค่าที่อ่าน บนกราฟ BA จุดจะ เอียงขึ้น / บานออก:
6) Percent และ log Bland–Altman: ข้อมูลเดิม สเกลที่ยุติธรรมกว่า
หน่วยจริง (absolute) อาจหลอกเราเมื่อความคลาดเคลื่อนเป็นสัดส่วน ถ้าอ่านตรงตัว กราฟด้านขวาข้างบนดูเหมือนบอกว่า “เครื่องแย่ลงมากที่ค่าสูง ๆ” แต่จริง ๆ มันไม่ได้แย่ลง — ความคลาดเคลื่อนเป็นเปอร์เซ็นต์คงที่ มันแค่ ดู ใหญ่ขึ้น เพราะ $10\%$ ของเลขมาก ก็เป็นเลขมาก
กราฟ percent BA แก้เรื่องนี้โดยหารผลต่างแต่ละจุดด้วยค่าเฉลี่ยของสองวิธี: $\text{pct}_i = 100\times (x_i-y_i)/\text{mean}_i$ ข้อมูล proportional ชุดเดิมจะกลายเป็น แถบแบนราว $+10\%$:
ตรงนี้มีสองอย่างขยายไปพร้อมกัน และสเกล percent (หรือ log) ทำให้แบนทั้งคู่: ส่วนที่เป็นระบบ — % bias คงที่ ที่ทำให้เมฆ absolute เอียง — และส่วนสุ่ม — % scatter คงที่ (constant CV) ที่ทำให้มัน บานออก ถ้าเป็น proportional bias ล้วน ๆ ไม่มี noise ก็จะแค่เอียง แต่ความคลาดเคลื่อนแบบสัดส่วนจริง ๆ มักเกิดทั้งสองอย่างพร้อมกัน
log transform ไปอีกขั้นโดยเปลี่ยน “ผลต่าง” เป็น “อัตราส่วน” แทนที่จะดู $\text{ใหม่}-\text{มาตรฐาน}$ ก็วิเคราะห์ $\log(\text{ใหม่})-\log(\text{มาตรฐาน})=\log(\text{ใหม่}/\text{มาตรฐาน})$ แล้วแปลงกลับ ผลอ่านได้ว่า วิธีหนึ่งเป็น “กี่เท่า” ของอีกวิธี:
เช่น: geometric mean ratio $=1.08$, 95% limits of agreement $0.90$ ถึง $1.30$ — คือโดยเฉลี่ย วิธีใหม่อ่านสูงราว 8% และค่ารายคนวิ่งตั้งแต่ราว $10\%$ ต่ำกว่า ถึง $30\%$ สูงกว่า วิธีมาตรฐาน (ใน log analysis ค่า mean ratio คือจุดกึ่งกลางเชิงเรขาคณิตของขอบ $\sqrt{0.90\times1.30}\approx1.08$)
เมื่อไรไม่ควรใช้ percent หรือ log
ถ้าค่ามี ศูนย์หรือใกล้ศูนย์ เปอร์เซ็นต์จะระเบิด (หารด้วยเลขที่เกือบเป็นศูนย์) และ log ก็นิยามไม่ได้ กรณีนั้นให้อยู่กับสเกล absolute หรือสร้างแบบจำลองความแปรปรวนโดยตรง
7) กับดัก: bias เท่ากับศูนย์ที่ดูสมบูรณ์แบบ
นี่คือรูปแบบที่อันตรายที่สุด เพราะมันซ่อนอยู่หลังตัวเลขสรุปที่ดูน่าวางใจ ลองดู:
| ค่าเฉลี่ยของสองวิธี | ผลต่าง (ใหม่ − มาตรฐาน) |
|---|---|
| 10 | −10 |
| 50 | −5 |
| 100 | 0 |
| 150 | +5 |
| 200 | +10 |
ผลต่างเฉลี่ยเท่ากับ $0$ พอดี ถ้ารายงานแค่ bias คุณจะบอกว่านี่คือวิธีที่สมบูรณ์แบบ แต่จริง ๆ มันผิดเกือบทุกที่: อ่าน ต่ำไป ที่ค่าต่ำ และ สูงไป ที่ค่าสูง ถูกพอดีแค่ตรงกลางเท่านั้น รูปแบบนี้มองไม่เห็นใน bias แต่ชัดเจนบนกราฟ:
ตรวจ proportional bias ด้วยตัวเลข
ไม่ต้องเดาด้วยตา ให้ regress ผลต่างกับค่าเฉลี่ย:
$$d_i = a + b\cdot \text{mean}_i$$
ความชัน $b$ คือ proportional bias ถ้า $b\approx 0$ แถบแบน (ไม่มี proportional bias) ถ้า $b>0$ ค่ายิ่งสูงยิ่งอ่านสูงขึ้นเรื่อย ๆ ถ้า $b<0$ ค่ายิ่งสูงยิ่งอ่านต่ำลง ความชันที่ต่างจาก $0$ อย่างมีนัยสำคัญ คือการยืนยันทางสถิติของสิ่งที่ความเอียงบนกราฟแสดง
8) ห้ารูปแบบที่ต้องรู้จัก
กราฟ BA เกือบทุกอันเป็นหนึ่งในห้ารูปนี้ แต่ละแบบดูว่ากราฟ absolute เป็นอย่างไร กราฟ percent เป็นอย่างไร หมายความว่าอะไร และต้องทำอะไร
① Random difference (สุ่ม)
Absolute: เมฆสมมาตรรอบ $0$ การกระจายคงที่ Percent: เมฆคล้ายกัน แต่ % error เล็กลง เมื่อค่าเฉลี่ยมากขึ้น (noise เท่าเดิมหารด้วยเลขที่ใหญ่ขึ้น) หมายความว่า: ส่วนใหญ่เป็น random noise ทำ: เพิ่ม precision (calibrate, ฝึกผู้วัด) และเฉลี่ยค่าซ้ำ
② Constant difference (offset คงที่)
Absolute: แถบแบนเลื่อนจาก $0$ การกระจายสม่ำเสมอ Percent: % error ลดลง เมื่อค่าเฉลี่ยสูงขึ้น (offset เท่าเดิมหารด้วยค่าที่ใหญ่ขึ้น) หมายความว่า: วิธีหนึ่งสูง/ต่ำกว่า ด้วยจำนวนคงที่ ทำ: แก้ด้วย offset correction หรือ recalibrate
③ Proportional difference (ความคลาดเคลื่อนตามสเกล)
Absolute: ผลต่าง/การกระจายโตตามค่าเฉลี่ย เป็นรูปบานออก Percent: แถบแบนรอบ % คงที่ หมายความว่า: ความคลาดเคลื่อนเป็นสัดส่วนคงที่ของขนาด (CV คงที่) ทำ: ปรับสเกล — fit ผลต่างกับ ค่าเฉลี่ย (หรือ Passing–Bablok / Deming regression) แล้ว rescale และตรวจซ้ำ
④ Proportional + constant difference
Absolute: มีความชันชัดเจน บวกกับ จุดตัดแกนที่ไม่เป็นศูนย์ Percent: แถบอยู่เหนือ $0\%$ และเอียงเล็กน้อยเมื่อผลของ offset จางลงที่ค่าสูง หมายความว่า: มีทั้ง offset คงที่ และ ส่วนที่เป็นสัดส่วนพร้อมกัน ทำ: แก้ทั้ง intercept และ slope (เส้น calibration เต็มรูป) แล้วประเมินใหม่
⑤ Mixed (ผสม)
Absolute: มีทั้งความชัน offset และ การกระจายที่เปลี่ยนตามช่วง (heteroscedasticity) Percent: ส่วนที่เป็นสัดส่วนชัดขึ้น หมายความว่า: มีแหล่งความคลาดเคลื่อนหลายอย่างพร้อมกัน ทำ: วินิจฉัยเป็นส่วน ๆ — fit เส้น bias พิจารณาแบ่งช่วง ตรวจความแปรปรวนที่เปลี่ยนไป แก้ทีละขั้นแล้ว plot ใหม่ ถ้ามีการวัดซ้ำหลายครั้งต่อคน ให้ใช้วิธีแบบ within-subject (repeatability)
9) Agreement เทียบกับ reliability — อย่าสับสน
Agreement ถามว่า “สองวิธี ใกล้กัน ในหน่วยจริงไหม?” — นั่นคือ Bland–Altman, bias และ LOA ส่วน reliability ถามว่า “การวัดซ้ำ ๆ แยกผู้ป่วยออกจากกันได้สม่ำเสมอไหม?” — นั่นคือ ICC (ต่อเนื่อง) หรือ kappa (จัดกลุ่ม) ทั้งสองอาจขัดกันได้: การวัดอาจมี ICC สูง (จัดอันดับผู้ป่วยได้ดีเพราะค่ากระจายกว้าง) แต่ agreement แย่ (LOA กว้าง) Bland–Altman ตอบคำถามเรื่องใช้แทนกัน ส่วน ICC ไม่ได้ตอบ
10) ข้อผิดพลาดที่พบบ่อย
- ใช้ correlation (หรือ $R^2$) อ้างว่า agreement ดี — มันวัดความสัมพันธ์ ไม่ใช่ความเท่ากัน
- รายงาน LOA โดยไม่เทียบกับ เกณฑ์คลินิกที่ตั้งไว้ล่วงหน้า
- ดู แค่ bias เฉลี่ย แล้วพลาด proportional pattern (หัวข้อ 7)
- ใช้ percent/log ทั้งที่ค่าใกล้ศูนย์
- ละเลย การวัดซ้ำ — หลายคู่ต่อคนต้องใช้วิธี within-subject ไม่งั้น LOA จะแคบเกินจริง
สรุปสาระสำคัญ
- ตัวเลข Bland–Altman รายงาน bias, SD ของผลต่าง และ limits of agreement $\bar d\pm 1.96\,s_d$ — กราฟแค่ช่วยให้เราเชื่อมัน
- bias vs LOA bias คือช่องว่างเฉลี่ย ส่วน ขอบ LOA บอกว่าค่ารายคน ของสองวิธีต่างกันได้ไกลแค่ไหน
- ตัดสิน เทียบขอบกับ เกณฑ์คลินิก ที่ตั้งไว้ล่วงหน้า ไม่ใช่ค่า p
- pattern เมฆแบน = noise; แถบเลื่อน = constant bias; เอียง/บาน = proportional bias; ความชันผ่านศูนย์อาจซ่อนหลัง bias ที่เป็น $0$ ได้
- สเกล absolute BA สำหรับ error แบบบวก; percent หรือ log BA เมื่อ error โตตามขนาด
- ไม่ใช่ ICC ใช้ Bland–Altman วัด agreement และ ICC/kappa วัด reliability
Comments
No comments yet. Be the first to share your thoughts.
Sign in to comment