วิธีสร้างพล็อตการโต้ตอบใน r
การวิเคราะห์ความแปรปรวนแบบสองทาง ใช้เพื่อพิจารณาว่ามีความแตกต่างระหว่างค่าเฉลี่ยของกลุ่มอิสระสามกลุ่มขึ้นไปที่ถูกแบ่งออกเป็นสองปัจจัยหรือไม่
เราใช้การวิเคราะห์ความแปรปรวนแบบสองทางเมื่อเราต้องการทราบว่าปัจจัยเฉพาะสองปัจจัยส่งผลต่อตัวแปรการตอบสนองบางอย่างหรือไม่
อย่างไรก็ตาม บางครั้งมี ผลกระทบปฏิสัมพันธ์ ระหว่างปัจจัยทั้งสอง ซึ่งอาจส่งผลต่อวิธีที่เราตีความความสัมพันธ์ระหว่างปัจจัยและตัวแปรการตอบสนอง
ตัวอย่างเช่น เราอาจต้องการทราบว่าปัจจัย (1) การออกกำลังกาย และ (2) เพศ ส่งผลต่อการตอบสนองต่อ การลดน้ำหนัก หรือไม่ แม้ว่าทั้งสองปัจจัยจะส่งผลต่อการลดน้ำหนัก แต่ก็เป็นไปได้ที่ทั้งสองปัจจัยจะมีปฏิกิริยาโต้ตอบกัน
ตัวอย่างเช่น เป็นไปได้ว่าการออกกำลังกายทำให้น้ำหนักลดลงในอัตราที่ต่างกันในผู้ชายและผู้หญิง ในกรณีนี้มีผลกระทบต่อปฏิสัมพันธ์ระหว่างการออกกำลังกายและเพศ
วิธีที่ง่ายที่สุดในการตรวจจับและทำความเข้าใจผลกระทบจากการโต้ตอบระหว่างสองปัจจัยคือการใช้ กราฟปฏิสัมพันธ์
นี่คือประเภทของพล็อตที่แสดงค่าที่พอดีของตัวแปรตอบสนองบนแกน y และค่าของปัจจัยแรกบนแกน x ในขณะเดียวกัน เส้นในกราฟแสดงถึงค่าของปัจจัยที่สองที่น่าสนใจ
บทช่วยสอนนี้จะอธิบายวิธีสร้างและตีความพล็อตการโต้ตอบใน R
ตัวอย่าง: โครงเรื่องปฏิสัมพันธ์ใน R
สมมติว่านักวิจัยต้องการตรวจสอบว่าความเข้มข้นของการออกกำลังกายและเพศส่งผลต่อการลดน้ำหนักหรือไม่ เพื่อทดสอบสิ่งนี้ พวกเขาคัดเลือกผู้ชาย 30 คนและผู้หญิง 30 คนเพื่อเข้าร่วมการทดลอง โดยสุ่มให้ 10 คนในจำนวนนั้นปฏิบัติตามโปรแกรมการออกกำลังกายแบบไม่ออกกำลังกาย ออกกำลังกายเบา ๆ หรือออกกำลังกายหนัก ๆ เป็นเวลาหนึ่งเดือน
ใช้ขั้นตอนต่อไปนี้เพื่อสร้างกรอบข้อมูลใน R ดำเนินการวิเคราะห์ความแปรปรวนแบบสองทาง และสร้างพล็อตการโต้ตอบเพื่อแสดงภาพเอฟเฟกต์การโต้ตอบระหว่างการออกกำลังกายและเพศ
ขั้นตอนที่ 1: สร้างข้อมูล
รหัสต่อไปนี้แสดงวิธีการสร้างกรอบข้อมูลใน R:
#make this example reproducible set.seed(10) #create data frame data <- data.frame(gender = rep (c("Male", "Female"), each = 30 ), exercise = rep (c("None", "Light", "Intense"), each = 10 , times = 2 ), weight_loss = c(runif(10, -3, 3), runif(10, 0, 5), runif(10, 5, 9), runif(10, -4, 2), runif(10, 0, 3), runif(10, 3, 8))) #view first six rows of data frame head(data) gender exercise weight_loss 1 Male None 0.04486922 2 Male None -1.15938896 3 Male None -0.43855400 4 Male None 1.15861249 5 Male None -2.48918419 6 Male None -1.64738030
ขั้นตอนที่ 2: ติดตั้งโมเดล ANOVA แบบสองทาง
รหัสต่อไปนี้แสดงวิธีปรับการวิเคราะห์ความแปรปรวนแบบสองทางให้พอดีกับข้อมูล:
#fit the two-way ANOVA model model <- aov(weight_loss ~ gender * exercise, data = data) #view the model output summary(model) # Df Sum Sq Mean Sq F value Pr(>F) #gender 1 15.8 15.80 11.197 0.0015 ** #exercise 2 505.6 252.78 179.087 <2e-16 *** #gender:exercise 2 13.0 6.51 4.615 0.0141 * #Residuals 54 76.2 1.41 #--- #Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
โปรดทราบว่าค่า p ( 0.0141 ) สำหรับเงื่อนไขปฏิสัมพันธ์ระหว่างการออกกำลังกายและเพศนั้นมีนัยสำคัญทางสถิติ ซึ่งบ่งชี้ว่ามีผลกระทบอย่างมีนัยสำคัญระหว่างปัจจัยทั้งสอง
ขั้นตอนที่ 3: สร้างพล็อตการโต้ตอบ
รหัสต่อไปนี้แสดงวิธีสร้างแผนการโต้ตอบสำหรับการออกกำลังกายและเพศ:
interaction.plot(x.factor = data$exercise, #x-axis variable trace.factor = data$gender, #variable for lines response = data$weight_loss, #y-axis variable fun = median, #metric to plot ylab = "Weight Loss", xlab = "Exercise Intensity", col = c("pink", "blue"), lty = 1, #line type lwd = 2, #linewidth trace.label = "Gender")
โดยทั่วไป หากเส้นสองเส้นของแผนภาพการโต้ตอบขนานกัน จะไม่มีผลกระทบจากการโต้ตอบ อย่างไรก็ตาม หากเส้นตัดกัน อาจมีผลกระทบจากการโต้ตอบ
จากกราฟนี้เราจะเห็นได้ว่าเส้นตัดระหว่างชายและหญิง ซึ่งบ่งชี้ว่าน่าจะมีผลกระทบต่อปฏิสัมพันธ์ระหว่างตัวแปรความเข้มข้นของการออกกำลังกายและเพศ
ซึ่งสอดคล้องกับข้อเท็จจริงที่ว่าค่า p ในผลลัพธ์ของตาราง ANOVA มีนัยสำคัญทางสถิติสำหรับเงื่อนไขการโต้ตอบในแบบจำลอง ANOVA
แหล่งข้อมูลเพิ่มเติม
วิธีดำเนินการวิเคราะห์ความแปรปรวนแบบทางเดียวใน R
วิธีดำเนินการวิเคราะห์ความแปรปรวนแบบสองทางใน R