08 พฤษภาคม 2552

Systematic Review & Meta-analysis

จากที่ผมเคยสัญญาว่าจะเขียนเรื่องเกี่ยวกับการ Appraise Systematic Review นะครับ ก่อนอื่นเลยก็ต้องขอพูดเกริ่นนำเรื่อง Systematic Review และ Meta-analysis ก่อนครับ

Systematic Review โดยนิยามนั้นหมายถึงการรวบรวมคำตอบของคำถามที่จำเพาะเจาะจงครับ ลองนึกสภาพถึงคำถามที่เกิดขึ้นในทางคลินิกนะครับ คำถามในที่นี้ก็จะล้อกันไปกับ PICO นั่นละครับ ตัวอย่างเช่น

  • การให้ Aspirin ในผู้ป่วยเบาหวานช่วยลดการเกิด MI หรือไม่
  • การให้ แป๊ะก๊วย ช่วยลดอาการปวดขาเป็นพักๆ (intermittent claudication) หรือไม่
  • การผ่าตัดถุงน้ำดีแบบส่องกล้อง (laparoscopic cholecystectomy) ลดอัตรา complication หรือไม่เมื่อเทียบกับการผ่าแบบเปิด (open cholecystectomy)
  • ฯลฯ

เมื่อมีการตอบคำถามเหล่านี้มากขึ้นเรื่อยๆ ไม่ว่าจะเป็นจากทั้งการศึกษาแบบ observational (cohort/cross-sectional) หรือ experimental (RCT) มันก็คงไม่สะดวกเวลาตอบใช่ไหมครับ หากเราต้องมานั่งอ่านเป็นสิบเปเปอร์ มันจะดีกว่ามั้ยถ้าเรารวมคำตอบไว้ทีเดียวเลย นั่นคือที่มาของ “review” ครับ

แต่หลายๆ ท่านก็คงเคยอ่าน review โดยทั่วๆ ไปแล้วนะครับ เช่นจากพวก textbook หรือ article review ที่อ่านตามหนังสือทั่วไป ปัญหาของพวก review พวกนี้ที่เกิดขึ้นก็คือว่า มัน “ไม่เป็นระบบ” ครับ คนทำอาจจะเอนเอียงไปข้างใดข้างหนึ่งก็ได้ (เช่นคนเขียนนั่งอยู่ที่บริษัทเครื่องมือผ่าตัดส่องกล้อง เขียนเชียร์ตัวเองอยู่) ทำให้ผลที่ได้อาจจะไม่ได้พูดถึงในอีกแง่มุมหนึ่งเลย จุดนี้เอง เป็นที่มาของการทำ Systematic Review ครับ

ขั้นตอนของการทำ Systematic Review ขั้นแรกก็คือการตั้งปัญหาที่เราสนใจครับ ปัญหานั้นจะต้องค่อนข้างเจาะจง เพื่อที่เราจะได้ตอบได้ครับ หลังจากนั้นเราจะต้องหาคำตอบของปัญหานี้ด้วยวิธีที่เป็นระบบ โดยอาจจะมีการตั้งกฎเกณฑ์ที่เป็นระบบไว้ก่อน เช่น ตั้งว่าจะค้นหาด้วยวิธีใดบ้าง ค้นฐานข้อมูลใด ใครค้น คัดเลือกด้วยใคร ใครเป็นคนกรอกข้อมูล ข้อมูลที่ได้จะรวมกันแบบไหน อย่างใด เสมือนหนึ่งเดียวกับการทำวิจัยชนิดอื่นๆ เลยครับ (นั่นจึงเป็นที่มาของคำว่า “Systematic”)

ขั้นต่อมาก็คือการค้นคว้าครับ ในขั้นตอนการค้นคว้านี้ ฐานข้อมูลที่เป็นที่นิยมโดยส่วนมากก็คือ Medline ครับ ไม่ต้องงงนะครับ จริงๆ ก็คือฐานข้อมูลที่ PubMed มีอยู่นั่นละครับ (PubMed เป็นชื่อของ “ตัวค้น” – Search Engine ส่วน Medline เป็นชื่อของ “ฐานข้อมูล” – Database) ส่วนฐานข้อมูลอื่นๆ ที่นิยมก็เช่น EMBASE (ของฝั่งยุโรป), CINAHL, Cochrane Controlled Trial Register เป็นต้นครับ นอกจากนี้ยังอาจจะค้นจากสื่ออื่นๆ เช่น ค้นจากการติดต่อ Expert, ค้นจากรายงานของ Conference ต่างๆ ด้วยก็จะยิ่งดีครับ

หลังจากที่เราค้นหาหลักฐานต่างๆ จากฐานข้อมูลนี้มาได้แล้ว เราก็จะต้องมาดูว่าเปเปอร์ไหนบ้างที่เข้ากับคำถามของเราครับ (ตรงจุดนี้จะต้องมีกำหนดไว้ก่อนในช่วงแรกแล้วอย่างแน่ชัดเป็น inclusion/exclusion criteria มิเช่นนั้นจะกลายเป็นว่าเรา “เลือก” หลักฐานมา – เป็น selection bias นั่นเองครับ)

เมื่อได้เปเปอร์มาแล้ว ผู้วิจัยส่วนใหญ่ก็จะให้คะแนนความน่าเชื่อถือของเปเปอร์ครับ โดยคะแนนความน่าเชื่อถือนี้มีหลายแบบครับตามแต่ว่าเปเปอร์ที่เลือกมานั้นเป็นประเภทใด เช่นถ้าเป็นของ RCT ก็จะเป็น JADAD score เป็นต้นครับ

หลังจากนั้นผู้วิจัยก็อาจจะสรุปเลยก็ได้ครับว่าหลังจากที่ค้นมาแล้วเป็นอย่างไรบ้าง แต่ส่วนใหญ่มักจะไม่จบเพียงแค่นี้ครับ (เพราะเสียดายอุตส่าห์ค้นมาตั้งเยอะ) ส่วนใหญ่เขาก็จะดึงเอาข้อมูลออกมา เพื่อที่จะนำข้อมูลนั้นมารวมกันด้วยวิธีการทางสถิติ ที่เรียกกันว่า meta-analysis กันนั่นเองครับ (โดยอาจจะมี Forest Plot + Heterogeneity Test ตามที่เคยเขียนไปแล้วด้วยครับ) นอกจากนี้ยังอาจจะวิเคราะห์ย่อยๆ ด้วยเช่นว่า ถ้าแบ่งเปเปอร์เป็นกลุ่มๆ แล้วจะมีคำตอบแตกต่างกันไปหรือไม่ เช่นผมรวม RCT ที่เกี่ยวกับการให้ Aspirin ในคนไข้เบาหวาน แต่มันมีทั้งเบาหวานแบบที่มีความดันร่วมด้วย หรือไม่มีความดันร่วมด้วย ผมอาจจะแบ่งข้อมูลเป็นสองกลุ่ม แล้วดูว่ามันต่างกันหรือไม่ก็ได้ครับ ซึ่งเรียกว่าการทำ Subgroup analysis

นอกจากการนำข้อมูลของเปเปอร์อื่นมารวบรวมด้วยกันแล้ว เรายังอาจจะนำเอาข้อมูลของ “คนไข้” ในแต่ละเปเปอร์นี้มารวมกันได้ด้วยครับ นั่นก็คล้ายกับว่าผู้วิจัยเสมือนหนึ่งเป็นการรวม Trials ต่างๆ เข้าด้วยกัน ซึ่งทำให้จำนวน n มากขึ้นนั่นเองครับ การนำข้อมูลคนไข้มารวมกันนี้ บางทีก็จะเรียกว่าเป็น Individual Patient Data ครับ

และสุดท้ายที่ผู้วิจัยอาจจะนำเสนอก็คือการแสดง Publication Bias ครับ Publication Bias ก็คือการที่ Study ที่ไม่ได้ผลนั้นอาจจะไม่ได้ลงตีพิมพ์ในฐานข้อมูล ทำให้เราอาจจะ “หลุด”  Study ที่ไม่ได้ผลก็ได้ครับ เช่น RCT ที่ให้แป๊ะก๊วยแล้วไม่ได้ผล ก็อาจจะไม่มีสำนักพิมพ์ไหนอยากเอาไปพิมพ์ ทำให้ในฐานข้อมูลทั้งหมดกลายเป็นมีแต่แป๊ะก๊วยใช้ได้ผล ทั้งๆ ที่มันก็มี RCT ที่ให้แล้วไม่ได้ผลเหมือนกัน ตรงจุดนี้เราสามารถพล็อตกราฟเพื่อดูได้ครับว่า ผลมันไปทางเดียวกันหมดเลยหรือเปล่า (กราฟที่นิยมคือ Funnel Plot ครับ)

กล่าวโดยสรุปแล้ว ถ้ามีการวางแผนและทำเป็นระบบนั้น ก็จะยิ่งเพิ่มความน่าเชื่อถือของการทำ Systematic Review เข้าไปอีกครับ นั่นเองเป็นที่มาของว่า ทำไม Systematic Review นั้นถึงได้อยู่ในอันดับต้นๆ ของ Hierachy of evidence ครับ

01 พฤษภาคม 2552

ติดตั้งแพคเกจใน R ผ่าน Proxy/ติดตั้งด้วยมือ

เคยมีคนถามผมครับว่าโปรแกรม R นั้นจะลงแพคเกจเสริมได้อย่างไร หากว่าเราต้องต่ออินเทอร์เน็ตผ่าน Proxy หรือเราดาวน์โหลดแพคเกจนั้นมาลงเอง

วิธีการก็ไม่ได้ลำบากอะไรเท่าไหร่ครับ แทนที่เราจะเริ่มโปรแกรม R ขึ้นมาเอง ให้คลิ๊กขวาในไอคอนของโปรแกรมใน Start Menu แล้วเลือก Properties



หลังจากนั้นพิมพ์เพิ่มเติมในช่อง Target จากเดิมที่เป็น:
"C:\Program Files\R\R-2.9.0\bin\Rgui.exe"

ให้ต่อท้ายด้วยเว็บ proxy แบบนี้แทน:
"C:\Program Files\R\R-2.9.0\bin\Rgui.exe" http_proxy=<ชื่อ proxy> http_proxy_user=ask

เช่นอย่างของมหิดล proxy นั้นคือ proxy-phy1.mahidol:8080 ก็จะเป็นแบบนี้ครับ:
"C:\Program Files\R\R-2.9.0\bin\Rgui.exe" http_proxy=proxy-phy1.mahidol:8080 http_proxy_user=ask




คราวนี้เวลากดเลือก Install Package ก็จะมีหน้าขึ้นมาให้ใส่ชื่อผู้ใช้และรหัสผ่านเหมือนโปรแกรมอื่นๆ แล้วครับ



สำหรับท่านที่ดาวน์โหลดแพคเกจมาเองจาก CRAN ให้เลือกเป็น Windows binary แล้วเลือกเมนู Packages -> Install package(s) from local zip files ครับ



อ้อ ตอนนี้ R มีถึงเวอร์ชัน 2.9.0 แล้วนะครับใครยังไม่ได้อัพเดตก็อัพเดตได้แล้วครับ