R에서 상호 작용 플롯을 만드는 방법


양방향 ANOVA는 두 요인으로 분할된 3개 이상의 독립 그룹 평균 간에 차이가 있는지 확인하는 데 사용됩니다.

두 가지 특정 요인이 특정 반응 변수에 영향을 미치는지 알고 싶을 때 양방향 분산 분석을 사용합니다.

그러나 때로는 두 요인 사이에 상호 작용 효과가 있어 요인과 반응 변수 간의 관계를 해석하는 방법에 영향을 줄 수 있습니다.

예를 들어, 요인 (1) 운동 과 (2) 성별이 반응 변수 체중 감소에 영향을 미치는지 알고 싶을 수 있습니다. 두 요인 모두 체중 감량에 영향을 미칠 수도 있지만 서로 상호 작용할 수도 있습니다.

예를 들어, 운동으로 인해 남성과 여성의 체중 감량 속도가 서로 다를 수 있습니다. 이 경우 운동과 성별 사이에 상호작용 효과가 있다.

두 요인 간의 상호작용 효과를 감지하고 이해하는 가장 간단한 방법은 상호작용 그래프를 사용하는 것입니다.

y축에 반응변수의 적합치를, x축에 첫 번째 요인의 값을 표시하는 일종의 그래프입니다. 한편, 그래프의 선은 두 번째 관심 요소의 값을 나타냅니다.

R의 상호작용 플롯

이 튜토리얼에서는 R에서 상호작용 플롯을 생성하고 해석하는 방법을 설명합니다.

예: R의 상호작용 플롯

연구자들이 운동 강도와 성별이 체중 감량에 영향을 미치는지 여부를 확인하려고 한다고 가정해 보겠습니다. 이를 테스트하기 위해 그들은 남성 30명과 여성 30명을 모집하여 무작위로 10명에게 한 달 동안 운동하지 않거나 가벼운 운동 또는 강렬한 운동 프로그램을 따르도록 배정하는 실험에 참여했습니다.

다음 단계를 사용하여 R에서 데이터 프레임을 생성하고, 양방향 ANOVA를 수행하고, 상호 작용 플롯을 생성하여 운동과 성별 간의 상호 작용 효과를 시각화합니다.

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")

R의 상호작용 플롯

일반적으로 교호작용도의 두 선이 평행하면 교호작용 효과가 없습니다. 그러나 선이 교차하면 상호작용 효과가 있을 가능성이 높습니다.

이 그래프에서 남성과 여성의 선이 교차하는 것을 볼 수 있는데, 이는 운동 강도 변수와 성별 사이에 상호작용 효과가 있을 가능성이 있음을 나타냅니다.

이는 ANOVA 테이블 결과의 p-값이 ANOVA 모델의 상호작용 항에 대해 통계적으로 유의하다는 사실에 해당합니다.

추가 리소스

R에서 일원 분산 분석을 수행하는 방법
R에서 양방향 ANOVA를 수행하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다