จะคำนวณความผิดพลาดมาตรฐานของอัตราต่อรองได้อย่างไร


10

ฉันมีสองชุดข้อมูลจากการศึกษาความสัมพันธ์ของจีโนมกว้าง ข้อมูลเท่านั้นที่มีคืออัตราส่วนอัตราต่อรองและค่า p สำหรับชุดข้อมูลแรก สำหรับชุดข้อมูลที่สองฉันมีอัตราต่อรอง, p-value และความถี่อัลลีล (AFD = โรค, AFC = การควบคุม) (เช่น: 0.321) ฉันพยายามทำการวิเคราะห์เมตาดาต้าของข้อมูลเหล่านี้ แต่ฉันไม่มีพารามิเตอร์ขนาดผลเพื่อดำเนินการนี้ มีความเป็นไปได้ในการคำนวณช่วงเวลา SE และ OR สำหรับแต่ละข้อมูลเหล่านี้โดยใช้ข้อมูลที่มีให้หรือไม่?
ขอบคุณล่วงหน้า

ตัวอย่าง: ข้อมูลที่มีอยู่:

    Study     SNP ID      P        OR    Allele   AFD    AFC
    1         rs12345    0.023    0.85
    2         rs12345    0.014    0.91     C      0.32   0.25

ด้วยข้อมูลเหล่านี้ฉันสามารถคำนวณ SE และ CI95% หรือ ขอบคุณ

คำตอบ:


16

คุณสามารถคำนวณ / ประมาณข้อผิดพลาดมาตรฐานผ่านค่า p ครั้งแรกที่แปลงค่า P-สองด้านเป็นหนึ่งในด้านค่า P-โดยการหารพวกเขาโดย 2. เพื่อให้คุณได้และ0.007 จากนั้นแปลงค่า p เหล่านี้เป็นค่า z ที่สอดคล้องกัน สำหรับนี่คือและสำหรับนี่คือ (พวกมันเป็นลบเนื่องจากอัตราส่วนอัตราต่อรองต่ำกว่า 1) ค่า z เหล่านี้เป็นจริงสถิติทดสอบที่คำนวณโดยการบันทึกของอัตราส่วนอัตราต่อรองหารด้วยข้อผิดพลาดมาตรฐานที่สอดคล้องกัน (เช่น ) ดังนั้นจึงเป็นไปตามนั้นซึ่งให้ผลp=.0115p=.007p=.0115z=2.273p=.007z=2.457z=log(OR)/SESE=log(OR)/zSE=0.071สำหรับครั้งแรกและสำหรับการศึกษาที่สองSE=.038

ตอนนี้คุณมีทุกอย่างที่จะทำการวิเคราะห์เมตาดาต้า ฉันจะแสดงวิธีการคำนวณด้วย R โดยใช้แพ็คเกจ metafor:

library(metafor)
yi  <- log(c(.85, .91))     ### the log odds ratios
sei <- c(0.071, .038)       ### the corresponding standard errors
res <- rma(yi=yi, sei=sei)  ### fit a random-effects model to these data
res

Random-Effects Model (k = 2; tau^2 estimator: REML)

tau^2 (estimate of total amount of heterogeneity): 0 (SE = 0.0046)
tau (sqrt of the estimate of total heterogeneity): 0
I^2 (% of total variability due to heterogeneity): 0.00%
H^2 (total variability / within-study variance):   1.00

Test for Heterogeneity: 
Q(df = 1) = 0.7174, p-val = 0.3970

Model Results:

estimate       se     zval     pval    ci.lb    ci.ub          
 -0.1095   0.0335  -3.2683   0.0011  -0.1752  -0.0438       ** 

โปรดทราบว่าการวิเคราะห์เมตาดาต้าทำได้โดยใช้อัตราส่วนอัตราต่อรอง ดังนั้นเป็นอัตราส่วนอัตราต่อรองของบันทึกโดยประมาณที่ได้จากการศึกษาทั้งสองนี้ ลองแปลงกลับเป็นอัตราต่อรอง:0.1095

predict(res, transf=exp, digits=2)

 pred  se ci.lb ci.ub cr.lb cr.ub
 0.90  NA  0.84  0.96  0.84  0.96

ดังนั้นอัตราต่อรองที่รวมกันคือ. 90 กับ 95% CI: .84 ถึง .96


สำหรับฉันแล้วดูเหมือนว่าค่า SE ที่คำนวณในย่อหน้าแรกจะต้องเป็นข้อผิดพลาดมาตรฐานของลอการิทึมของอัตราต่อรองไม่ใช่ข้อผิดพลาดมาตรฐานของอัตราต่อรองนั่นเอง
Harvey Motulsky

แก้ไข. เราต้องการ SE ของอัตราส่วนอัตราต่อรองไม่ใช่อัตราต่อรอง เมตาดาต้า - วิเคราะห์จะดำเนินการโดยใช้อัตราส่วนอัตราต่อรองล็อกเป็นสิ่งเหล่านี้มีความสมมาตรรอบ 0 (เมื่อเทียบกับอัตราส่วนอัตราต่อรองซึ่งไม่ได้สมมาตรรอบ 1) และมีการกระจายที่ใกล้ชิดกับกฎเกณฑ์มาก
Wolfgang

@ Wolfgang ขอบคุณมากสำหรับคำตอบของคุณฉันใช้สิ่งที่คุณอธิบายในการทำงานของฉันดังนั้นฉันต้องการการอ้างอิงบางอย่าง ... คุณสามารถช่วยอ้างอิงด้วยสูตรได้หรือไม่? ขอบคุณล่วงหน้า
Bernabé Bustos Becerra

นี่คือทุกสิ่งตาม "หลักการแรก" ดังนั้นฉันไม่แน่ใจว่าการอ้างอิงที่เหมาะสมจะเป็นอย่างไร คุณสามารถอ้างถึงตัวอย่างเช่นคู่มือการสังเคราะห์งานวิจัยและ meta-analysis (เชื่อมโยง)
Wolfgang

2
จริงๆแล้วคู่มือไม่ถูกต้อง ( pngu.mgh.harvard.edu/~purcell/plink/metaanal.shtml ) ดูตัวอย่างแรก สำหรับ SNP rs915677,และ0.5862 ข้อผิดพลาดมาตรฐานคือสำหรับบันทึกอัตราส่วนราคาต่อรอง CI จะได้รับจากSE) ในกรณีนี้:ตรงตามที่แสดงในเอาต์พุต OR=0.7949SE=0.5862exp(log(OR)±1.96SE)exp(log(0.7949)±1.96×0.5862)=(0.252,2.508)
Wolfgang
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.