นโยบายการจัดการความรู้ มหาวิทยาลัยสงขลานครินทร์ 1.ให้ใช้เครื่องมือการจัดการความรู้ผลักดัน คุณภาพคน และกระบวนทำงาน 2.ส่งเสริมการแลกเปลี่ยนประสบการณ์การทำงาน จากหน้างาน 3.ส่งเสริมให้มีเวทีเรียนรู้ร่วมกัน

Our Shangri-La
Ico64
Kittisakdi Choomalee

ภาควิชาเวชศาสตร์ชุมชน คณะแพทยศาสตร์ มหาวิทยาลัยสงขลานครินทร์
เครือข่าย
สมาชิก · ติดตาม: 0 · ผู้ติดตาม: 16

อ่าน: 1225
ความเห็น: 0

ระเริงคิด ๖: ก้าวย่างทางเดิน ลืมเลือนคืนวัน ดั้นด้นไป [C]

ระเริงคิด จิตรวมศูนย์, การสร้างสมการถดถอยเชิงเส้นตรงด้วยฟังก์ชัน lm()

หลังจากที่เราใช้ scatter plot เป็นเครื่องมือในการดูความสัมพันธ์ระหว่างข้อมูล ๒ ชุดไปแล้วนั้นเราอาจจะสร้างสมการสำหรับใช้ทำนายค่า % จริงของสาร abc จากค่าที่วัดได้จากเครื่องมือ A หรือเครื่องมือ B

 

ทั้งนี้เนื่องจากว่าในการวัดค่า % ของสาร abc ด้วยเครื่องมือ A และเครื่องมือ B นั้น ค่าที่ตรวจวัดได้จากเครื่องมือทั้ง ๒ นั้นตรวจวัดได้ไม่ตรง (เท่ากับ) กับค่า % จริงของสาร abc ในทุกค่า % จริง ซึ่งอาจจะเกิดเนื่องจากความไม่เที่ยงของเครื่องมือเอง หรือเกิดเนื่องจากความคลาดเคลื่อนจากการวัดของเครื่องมือเอง

 

สมการที่เราจะใช้ก็คือสมการถดถอยเชิงเส้นตรง (linear regression) ซึ่งก็คือสมการเส้นตรงนั่นเอง หรือ y= a + bx + e

 

ในที่นี้เราถือว่าค่า e มีค่าน้อยมาก และมีการกระจายแบบ Normal Distribution เราจึงตัดค่า e ออกไม่รวมไว้ในสมการ สมการที่ได้จึงเป็น

y= a + bx

 

ใน R นั้นเราใช้ฟังก์ชัน lm() หรือ glm() ในการสร้างสมการถดถอยเชิงเส้นตรง

LM = Linear Model

GLM = Generalize Linear Model หรือ glm เป็นส่วนขยายของ lm ที่ให้ประยุกต์ใช้กับ distribution แบบต่าง ๆ ได้ ไม่เจาะจงเฉพาะกับ Normal distribution เท่านั้น

 

ผมให้ดูตัวอย่างผลลัพธ์จากการใช้ lm() สร้างสมการถดถอยเชิงเส้นตรง สักสมการนะครับ

 

สมการที่เราสร้างขึ้นนี้ เพื่อใช้ในการทำนายค่า y ค่า y ของเราในที่นี้ก็คือค่า % จริงของสาร abc หรือ y ของเราในที่นี้คือตัวแปร data1$conc_sam

 

ตัวแปรที่ใช้ทำนาย (predict) ค่า y ก็คือตัวแปร x ในที่นี้ผมยกตัวอย่างค่าที่วัดได้จากเครื่องมือ A มาเป็นค่าที่ใช้ทำนายค่า % จริงของสาร abc

 

สมการนี้จะเรียกอีกอย่างว่าเป็นสมการความสัมพันธ์ระหว่าง x กับ y ก็ได้ หรือสมการที่เราจะสร้างนี้อาจจะเรียกว่าเป็น correction equation

 

  • เราสร้างสมการถดถอยเชิงเส้นตรงด้วยฟังก์ชัน lm() แล้วเก็บผลลัพธ์ที่ได้ไว้ใน model2
  • ใช้ฟังก์ชัน summary() สำหรับแสดงค่าที่เก็บไว้ใน model2

 

> model2 <- lm(data1$conc_sam ~ data1$toola)
> summary(model2)

Call:
lm(formula = data1$conc_sam ~ data1$toola)

Residuals:
    Min      1Q  Median      3Q     Max
-1.0748 -0.3727 -0.0284  0.2448  1.5323

Coefficients:
            Estimate Std. Error t value Pr(>|t|)   
(Intercept) 2.035613   0.148176   13.74   <2e-16 ***
data1$toola 0.979416   0.002558  382.86   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.5428 on 48 degrees of freedom
Multiple R-squared: 0.9997,     Adjusted R-squared: 0.9997
F-statistic: 1.466e+05 on 1 and 48 DF,  p-value: < 2.2e-16

 

คราวนี้ลองดูค่าสัมประสิทธิ์ของเพียร์สันอีกครั้งแล้วเปรียบเทียบกับผลที่ได้จากการสร้างสมการถดถอยเชิงเส้นตรง

 

> cor.test(data1$conc_sam,data1$toola)

        Pearson's product-moment correlation

data:  data1$conc_sam and data1$toola
t = 382.8604, df = 48, p-value < 2.2e-16
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
 0.9997101 0.9999076
sample estimates:
      cor
0.9998363

 

ครั้งหน้าเรามาดูในรายละเอียดของผลลัพธ์จากการสร้างสมการถดถอยเชิงเส้นตรงกันนะครับ

 

อิอิอิ

 

เราเอง

 

เพลง: ตะวันรอนที่หนองหาร
ศิลปิน: ศรคีรี ศรีประจวบ

 

Sections: Miscellaneous
License: ซีซี: แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกัน Cc-by-nc-sa
created: 01 October 2014 16:33 Modified: 28 April 2020 17:23 [ Report Abuse ]
ดอกไม้
People who like this: Ico24 anni, Ico24 คนธรรมดา, and 3 others.
People Who Like This
 
Facebook
Twitter
Google

Other Posts By This Blogger

ความเห็น

ไม่มีความเห็น
คุณต้องทำการเข้าระบบก่อนแสดงความเห็น