# Membuat data RAKL
data.menu <- data.frame(
  Kota = factor(rep(c("A", "B", "C", "D", "E", "F"), each = 3)),
  Menu = factor(rep(c("Menu1", "Menu2", "Menu3"), times = 6)),
  Terjual = c(
    31, 27, 24,   # Kota A
    31, 28, 31,   # Kota B
    45, 29, 46,   # Kota C
    21, 18, 48,   # Kota D
    42, 36, 46,   # Kota E
    32, 17, 40    # Kota F
  )
)

# Lihat data
print(data.menu)
##    Kota  Menu Terjual
## 1     A Menu1      31
## 2     A Menu2      27
## 3     A Menu3      24
## 4     B Menu1      31
## 5     B Menu2      28
## 6     B Menu3      31
## 7     C Menu1      45
## 8     C Menu2      29
## 9     C Menu3      46
## 10    D Menu1      21
## 11    D Menu2      18
## 12    D Menu3      48
## 13    E Menu1      42
## 14    E Menu2      36
## 15    E Menu3      46
## 16    F Menu1      32
## 17    F Menu2      17
## 18    F Menu3      40
str(data.menu)
## 'data.frame':    18 obs. of  3 variables:
##  $ Kota   : Factor w/ 6 levels "A","B","C","D",..: 1 1 1 2 2 2 3 3 3 4 ...
##  $ Menu   : Factor w/ 3 levels "Menu1","Menu2",..: 1 2 3 1 2 3 1 2 3 1 ...
##  $ Terjual: num  31 27 24 31 28 31 45 29 46 21 ...
#ANOVA
#Cara 1
anova.menu<-lm(Terjual~Kota+Menu, data=data.menu)
anova(anova.menu)
## Analysis of Variance Table
## 
## Response: Terjual
##           Df Sum Sq Mean Sq F value Pr(>F)  
## Kota       5 559.78 111.956  2.0610 0.1547  
## Menu       2 538.78 269.389  4.9591 0.0319 *
## Residuals 10 543.22  54.322                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Cara 2
ujianova.menu = aov(Terjual~Kota+Menu, data=data.menu)
ujianova.menu
## Call:
##    aov(formula = Terjual ~ Kota + Menu, data = data.menu)
## 
## Terms:
##                     Kota     Menu Residuals
## Sum of Squares  559.7778 538.7778  543.2222
## Deg. of Freedom        5        2        10
## 
## Residual standard error: 7.370361
## Estimated effects may be unbalanced
summary(ujianova.menu)
##             Df Sum Sq Mean Sq F value Pr(>F)  
## Kota         5  559.8  111.96   2.061 0.1547  
## Menu         2  538.8  269.39   4.959 0.0319 *
## Residuals   10  543.2   54.32                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#VISUALISASI
boxplot(data.menu$Terjual~data.menu$Menu)

boxplot(data.menu$Terjual~data.menu$Kota)

interaction.plot(data.menu$Kota,data.menu$Menu,data.menu$Terjual,
                 col=1:3,type = "l")
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.4.3

ggplot(data.menu, aes(x = Kota, y = Terjual, group = Menu)) +
  geom_line(aes(color = Menu))+
  geom_point(aes(color = Menu))+
  theme(legend.position = "top")