วิธีสร้างแปลงที่เหลือบางส่วนใน r
การถดถอยเชิงเส้นพหุคูณ เป็นวิธีการทางสถิติที่เราสามารถใช้เพื่อทำความเข้าใจความสัมพันธ์ระหว่างตัวแปรทำนายหลายตัวกับ ตัวแปรตอบสนอง
อย่างไรก็ตาม หนึ่งใน สมมติฐาน ที่สำคัญของการถดถอยเชิงเส้นพหุคูณคือมีความสัมพันธ์เชิงเส้นระหว่างตัวแปรทำนายแต่ละตัวกับตัวแปรตอบสนอง
หากไม่เป็นไปตามสมมติฐานนี้ ผลลัพธ์ของแบบจำลองการถดถอยอาจไม่น่าเชื่อถือ
วิธีหนึ่งในการทดสอบสมมติฐานนี้คือการสร้าง พล็อตส่วนที่เหลือ ซึ่งแสดง ส่วนที่เหลือ ของตัวแปรทำนายที่สัมพันธ์กับตัวแปรตอบสนอง
ตัวอย่างต่อไปนี้แสดงวิธีการสร้างแผนคงเหลือบางส่วนสำหรับแบบจำลองการถดถอยใน R
ตัวอย่าง: วิธีการสร้างแปลงที่เหลือบางส่วนใน R
สมมติว่าเราพอดีกับแบบจำลองการถดถอยที่มีตัวแปรทำนายสามตัวใน R:
#make this example reproducible set. seeds (0) #define response variable y <- c(1:1000) #define three predictor variables x1 <- c(1:1000)*runif(n=1000) x2 <- (c(1:1000)*rnorm(n=1000))^2 x3 <- (c(1:1000)*rnorm(n=1000))^3 #fit multiple linear regression model model <- lm(y~x1+x2+x3))
เราสามารถใช้ฟังก์ชัน crPlots() จากแพ็คเกจ รถยนต์ ใน R เพื่อสร้างแผนที่เหลือบางส่วนสำหรับตัวแปรทำนายแต่ละตัวในโมเดล:
library (car) #create partial residual plots crPlots(model)
เส้นสีน้ำเงินแสดงปริมาณคงเหลือที่คาดหวังหากความสัมพันธ์ระหว่างตัวทำนายและตัวแปรการตอบสนองเป็นแบบเส้นตรง เส้นสีชมพูแสดงปริมาณคงเหลือจริง
หากทั้งสองเส้นมีความแตกต่างกันอย่างมีนัยสำคัญ แสดงว่ามีความสัมพันธ์แบบไม่เชิงเส้น
จากกราฟด้านบน เราจะเห็นว่าส่วนที่เหลือของ x2 และ x3 ปรากฏไม่เป็นเชิงเส้น
สิ่งนี้ฝ่าฝืนสมมติฐานความเป็นเชิงเส้นของการถดถอยเชิงเส้นพหุคูณ วิธีหนึ่งในการแก้ปัญหานี้คือการใช้การแปลงรากที่สองหรือลูกบาศก์กับตัวแปรทำนาย:
library (car) #fit new model with transformed predictor variables model_transformed <- lm(y~x1+sqrt(x2)+log10(x3^(1/3))) #create partial residual plots for new model crPlots(model_transformed)
จากแปลงส่วนที่เหลือบางส่วน เราจะเห็นว่าตอนนี้ x2 มีความสัมพันธ์เชิงเส้นตรงกับตัวแปรตอบสนองมากขึ้น
ตัวแปรทำนาย x3 ยังคงค่อนข้างไม่เป็นเชิงเส้น ดังนั้นเราอาจตัดสินใจลองการแปลงอีกครั้งหรืออาจลบตัวแปรออกจากแบบจำลองทั้งหมด
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีสร้างแปลงทั่วไปอื่น ๆ ใน R:
วิธีสร้างแผนการวินิจฉัยใน R
วิธีสร้างมาตราส่วนและพล็อตตำแหน่งใน R
วิธีสร้างพล็อตที่เหลือใน R