Propensity score ทางเลือกการวิจัย intervention ด้วย observational study


Propensity score เป็นวิธีจัดการกับ confounding by indication เพื่อเพิ่มความน่าเชื่อถือของ Quasi-experiment ให้ใกล้เคียงกับ RCT

Observational study ที่เราคุ้นเคยกันดี มี predictor เป็นปัจจัยเสี่ยงต่างๆ (เช่น การรับประทานเค็ม, ระดับไขมันในเลือด etc) 
Quasi-experiment คือการศึกษา predictor ที่เป็น intervention ( เช่น ยา การผ่าตัด โปรแกรมสุขภาพ) ที่การ assign โดยไม่มีการ randomized..แต่เป็นการให้ตามข้อบ่งชี้หรือความสมัครใจของผู้รับการรักษา

ในการให้ยารักษาผู้ป่วยคนหนึ่งๆ นั้น แพทย์จะพิจารณาถึงหลายปัจจัย เช่น อายุ การทำงานของตับ การทำงานของไต ระยะของโรค etc..ที่บ่งบอกว่า การให้ยากับผู้ป่วยรายนี้ Benefit มากกว่า harm  สิ่งต่างๆ เหล่านี้คือที่มาของ Confounding by indication

วิธีจัดการกับ Confounders ด้วย Multiple logistic regression ธรรมดา มีข้อจำกัดคือ

1. ถ้า confounders มีเยอะอย่างข้อบ่งชี้ ข้อห้ามในการให้ยาบางตัวมี 10+ ปัจจัย ..แต่ outcome rare เช่น ผู้ป่วย 1000 คน เสียชีวิต 10 คน ปัญหาที่ตามมาคือ "precision" น้อยจน CI กว้างมากสรุปยาก ( Rule of thumb - ควรมี outcome event 10:1 predictor) : การแก้ปัญหานี้ แต่เดิมคือทำให้ model ง่ายเข้าไว้ เลือกเฉพาะ ปัจจัยไม่กี่ตัว ที่ significant จาก biavariated analysis เรียกว่า "Parsimonious regression" ทำให้ model ขาด goodness of fit 

2. กรณีกลุ่มที่ได้รับการรักษา (treatment) กับกลุ่มที่ไม่ได้รับการรักษา (non-treatment) มีลักษณะแตกต่างกันโดยสิ้นเชิง เสมือน เปรียบเทียบ กับความหวาน ของ ส้มที่ได้รับการใส่ปุ๋ย กับ ทุเรียนที่ไม่ได้ใส่ปุ๋ย จะบอกว่าปุ๋ยดีกว่า ได้หรือไม่? -- การสรุปว่า ทุเรียน เป็นผลไม้เหมือนกัน น่าจะ "กล้อมแกล้ม" เป็นส้ม เรียกว่า "Extrapolation" ( = Extend beyond observed data)

Propensity score prəˈpɛnsɪtɪ อ่านว่า เพรอะ-เพ้น'-ซิทิ)เข้ามาจัดการปัญหานี้ ด้วยการนำเอาปัจจัยต่างๆ ที่มีผลต่อการตัดสินใจให้ intervention (Predictors to intervention) มาทำเป็น score  0-1 ผู้ป่วยกลุ่มที่มี score สูงหมายถึงมี "โอกาสที่จะได้รับ intervention มาก"
นั่นหมายความว่า หากเรานำคนที่มีโอกาสได้รับ intervention พอๆ กัน มาเปรียบเทียบ ก็จะ"ใกล้เคียง"กับหลักการของ randomization ( ทุกคนมีโอกาสได้รับ assign intervention พอๆ กัน)

  ข้อดีของ Propensity score คือ

1. ช่วยแก้ปัญหา precision loss เมื่อมี covariable จำนวนมาก ใน model predict outcome เนื่องจากสามารถสร้าง model predict treatment จาก covariable หลายตัว, interaction term, quadritic term เพื่อเพิ่ม goodness of fit มากขึ้นได้

2. กราฟแสดงของกระจายตัวของ propensity score ของกลุ่ม treatment และ non-treatment เป็นการบอกระดับความ "comparable" 
- ถ้ากลุ่มที่ได้รับ treatment และ non-treatment มีลักษณะแตกต่างกันสุดขั้ว โดยสิ้นเชิง ก็จะไม่มีกลุ่มที่มีโอกาสได้รับ intervention พอๆ กันมาเปรียบเทียบเลย
- ถ้ากลุ่มที่ได้รับ treatment และ non-treatment มีลักษณะเหมือนกันทุกประการ ก็จบข่าว เหมือน good randomized control trial
- Propensity score จึงมีประโยชน์ในกรณีลักษณะของ treatment และ non-treatment เป็นแบบ "partial overlap" ดังภาพ 

ตัวอย่างภาพแสดง propensity distribution ระหว่างกลุ่ม treatment (replacement) และ non-treatment (repair) จาก Gilvani et al

2. เหมาะกับการตอบคำถามเชิง "Effectiveness (real world)" ใน"organization level/public health perspective" หรือที่เรียกว่า Marginal effect  กล่าวคือวัดผลจากประชากรทั้งหมด  แล้วพิจารณาว่า ยา ก. ได้ผลหรือไม่ได้ ผล คุ้มไม่คุ้ม เพียงไร ในประชากรนั้น ( ขึ้นกับ prevalence incidence ในประชากรนั้น)
  ในขณะที่ Randomized control trial ให้ผลเชิง "Efficacy (ideal world)" ใน "individual level/treatment potential outcome" หรือที่เรียกว่า Conditional effect จากการคัดเลือกกลุ่มที่มีลักษณะจำเพาะมากๆ มาเพื่อพิจารณาว่าระหว่าง ยา ก. กับ ยา ข. หรือ placebo "อะไรดีกว่ากัน"
 ยกตัวอย่าง
  ลุงปั๋น  เป็น COPD เหนื่อยหอบ เราอยากรู้ว่าการให้ lorazepam จะได้ผลหรือไม่..เราควรใช้ผลจาก CPG หรือ RCT..
  กรณีนี้เราอาจใช้ผลจาก RCT แต่ต่องพิจารณาให้ดีว่าประชากรที่ศึกษานั้นมี condition เหมือนลุงปั๋นแค่ไหน
  แต่ถ้าคิด ต่อไปโรงพยาบาลเราจะออก protocal ให้กับผู้ป่วยทุกรายที่เป็น COPD ที่เหนื่อยหอบ..เราควรใช้ผลจาก CPG หรือ RCT""
   กรณีนี้ เราควรใช้ผลจาก CPG ที่ออกโดยประเทศไทยหรือภาคเหนือยิ่งดี เพราะประเมินความคุ้มค่าโดยใช้ prevalence ในบริบทของเรา..แต่แม่นที่สุด ก็คือการทำวิจัยผู้ป่วยที่อยู่ในฐานข้อมูลโรงพยาบาลเราเอง โดยใช้ Propensity score ( เฮ กลับเข้าเรื่องจนได้..)

ข้อจำกัด
1. ยังด้อยกว่า RCT ในแง่ unmeasurable confounders (เช่น ปัจจัยทางพันธุกรรม) 
2. ยังไม่เป็นที่คุ้นเคยของ Clinician (รวมทั้ง reviewer บางท่าน) เนื่องจากเพิ่งถือกำเนิดในปี 1983 -- MH.Katz,2006 แนะนำว่า ยังควร report multivariable regression เป็นตัวยืนพื้น โดยมี propensity score เป็นตัวเสริม
อาจารย์ของข้าพเจ้า กล่าวคำที่น่าสนใจว่า "คนไม่แคร์ ในสิ่งที่เขาไม่เข้าใจ"
- Biostatistician/Epidemiologist มักสนใจว่าสร้าง model แบบไหนถึงจะ fit ดี
แต่ Clinician  มักสนใจแต่ p value สรุปว่า รักษาแบบไหนดีกว่า
-- ความจริงที่เจ็บปวด

......
การวิเคราะห์ข้อมูลด้วย Propensity score มีสองขั้นตอนใหญ่
1. สร้าง Propensity score ด้วย Logistic regression predictor of "intervention"
2. นำ Propensity score มาใช้ร่วมกับเทคนิคจัดการ confounder อื่นได้แก่
2.1 Matching ข้อเสียคือ ต้องการ sample size ใหญ่ๆ เพราะเมื่อ match แล้วจะเสียส่วนที่ score ไม่ match กันไป
2.2 Stratification ตาม category ของ propensity score (ควรทำเป็น 5 level/quintile ขึ้นไปเพื่อลดการเกิด residual confounding)
2.3 Adjust เสมือนเป็น หนึ่ง categorical variable ใน multivariable model
2.4 นำ propensity score มาเป็นตัว weight เรียกว่า Inverse Probability of Treatement Weighted (IPTW) - ที่เรียกว่า "inverse" เพราะ "weight" ที่กำหนดให้แต่ละ observation นั้นเกิดจาก 1/propensity - นั่นแปลว่าใน treatment group ถ้า observation ไหนมี probability ได้รับ treatment น้อย จะมีน้ำหนักมาก เพื่อสู้กับ confounding by indication - เรียกกลยุทธนี้ว่า "Pseudopopulation" : เป็นเทคนิคที่เพิ่มความยุ่งไปอีกขั้น แต่น่าสนใจ โดยเฉพาะใน Time dependent confounding mediators ของ longitudinal study คะ

สามารถอ่านรายละเอียดได้ที่

1. Shah BR et al. กล่าวถึงการใช้ Propensity score ไม่ถูกวิธี-"suboptimal" กล่าวคือ ละเลยที่จะสร้าง propensity score จาก complex model เพื่อเพิ่ม precisionใน treatment model  และละเลยการดู score distribution เพื่อเตือนใจเรื่อง extrapolation

2. Kurth T et al. เปรียบเทียบเทคนิคการใช้ propensity score ทั้งสี่-- อ่านยากสักนิดคะ

ตัวอย่าง STATA example propensity score note  
สำหรับ SPSS ข้าพเจ้าไม่เคยทำ แต่มีผู้บอกว่า ใช้ function "predicted probability" และบทความว่าสามารถติดตั้ง plugin R for SPSS แล้ว Install custom dialog "Propensity matching" จาก Thoemmes, F. Propensity score matching in SPSS

 

 

หมายเลขบันทึก: 436746เขียนเมื่อ 24 เมษายน 2011 09:59 น. ()แก้ไขเมื่อ 11 ธันวาคม 2012 13:41 น. ()สัญญาอนุญาต: ครีเอทีฟคอมมอนส์แบบ แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกันจำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (9)

ขอบคุณมากๆ สำหรับคำอธิบายเรื่องนี้ครับอาจารย์ อาจารย์เขียนเรื่องที่เข้าใจยากให้ง่าย เห็นภาพชัดและไม่น่าเบื่อ ซึ่งเป็นสิ่งที่ผมต้องการจากอาจารย์ที่สอนสถิติที่สุดเลยครับ

ขอบคุณที่ให้กำลังใจคะ จะพยายามฝึกฝนการทำวิจัยเพื่อนำมาแลกเปลี่ยนเรียนรู้ต่อๆไปคะ

นพ.สรายุทธ เอี่ยมสอาด

ขอเรียนถามอาจารย์หน่อยครับ "ถ้ากลุ่มที่ได้รับ treatment และ non-treatment มีลักษณะเหมือนกันทุกประการ ก็จบข่าว เหมือน good randomized control trial" -- ถ้าดูกราฟแสดงว่ารูปร่างหน้าตาเหมือนกัน เกือบจะทับกันสนิทใช่มั๊ยครับ ถ้าเบ้เป็นสามเหลี่ยมไปคนละข้างระหว่าง Rx และ non-Rx แต่ยังมีทับกันตรงกลางอย่างใน Comparative Effectiveness of Revascularization Strategies NEJM April 2012 แบบนี้ใช้ได้ดีไหมครับอาจารย์ ข้อมูลเป็นแบบ Regristry ขอบพระคุณครับ ขอสมัครเป็นลูกศิษย์อาจารย์ด้วยคนครับ

เรียนคุณหมอสรายุทธ ขอบคุณที่แนะนำบทความค่ะ น่าสนใจมาก จะเห็นว่าผู้ป่วยใน registry ของเขามีถึงเรือนแสนคน จึงสามารถเลือกเอาเฉพาะส่วนที่ overlap ตรงกลาง ก็ยังมีจำนวนตัวอย่างมากพอวิเคราะห์แบบ propensity matching ซึ่งเป็นที่ยอมรับมากกว่าอีกสองวิธีที่เหลือ ( adjust , weight) ค่ะ ดังนั้นถ้าคุณหมอมีผู้ป่วยใน registry จำนวนมาก หลักพันถึงหมื่น การทำ matching ดังบทความตัวอย่างก็ทำได้ค่ะ คุณหมอใช้ program อะไรค่ะ โดยส่วนตัวใช้ STATA ไม่ได้ใช้ SPSS ล่าสุด มีนักศึกษาเภสัช ท่านหนึ่งทำเรื่องการใช้ยา ใน registry โดยใช้ SPSS สำเร็จ อาจถามเทคนิคเขาได้ค่ะ

สวัสดีครับ

บทความของคุณหมอดีมากๆครับ ผมอยากใช้ propensity score matching ในการคำนวนงานวิจัยครับ แต่อยากใช้ SPSS ไม่ทราบพอจะแนะนำใครให้ได้ไหมครับ

ขอบคุณมากๆครับ

ณัฐชัย

ขอบพระคุณสำหรับข้อมูลดีๆนะคะ อ่านง่ายมากเลย

พึ่งเรียนเรื่องนี้ครับ เป็นเรื่องที่ยังยากจะเข้าใจสำหรับผม แต่มีประโยชน์อย่างยิ่งเลยครับ

ขอบคุณสำหรับความรู้ครับ

ขอบคุณสำหรับบทควาทที่ทำให้เกิดความเข้าใจมากขึ้นและช่วยชี้นำในการทำวิจัยต่อไปครับ

นำ propensity score มาเป็นตัว weight เรียกว่า Inverse Probability of Treatement Weighted (IPTW) - ที่เรียกว่า “inverse” เพราะ “weight” ที่กำหนดให้แต่ละ observation นั้นเกิดจาก 1/propensity - นั่นแปลว่าใน treatment group ถ้า observation ไหนมี probability ได้รับ treatment น้อย จะมีน้ำหนักมาก เพื่อสู้กับ confounding by indication - เรียกกลยุทธนี้ว่า “Pseudopopulation” : เป็นเทคนิคที่เพิ่มความยุ่งไปอีกขั้น แต่น่าสนใจ โดยเฉพาะใน Time dependent confounding mediators ของ longitudinal study จากตรงนี้อยากสอบถาม อาจารย์เพิ่มค่ะ ถ้าต้องการเอาค่า uric acid ที่ตรวจวัดหลายๆ ค่ามาหาความสัมพันธ์เกี่ยวกับการโรคหัวใจหลอดเลือด ไดไหมค่ะ

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท