library(ggplot2)

# 1. BACA DATA 
data6 <- read.csv2("data6.1.csv")

# Tampilkan nama kolom dan 6 baris pertama
colnames(data6)
## [1] "Nomor"   "Nama"    "Nilai"   "Nomor.1" "Nama.1"  "Nilai.1" "Nomor.2"
## [8] "Nama.2"  "Nilai.2"
head(data6)
##   Nomor Nama Nilai Nomor.1 Nama.1 Nilai.1 Nomor.2 Nama.2 Nilai.2
## 1     1    A    40       7      H      70      13      N      80
## 2     2    B    50       8      I      70      14      O      90
## 3     3    C    50       9      J      70      15      P      90
## 4     4    D    60      10      K      70      16      Q     100
## 5     5    F    60      11      L      80      NA             NA
## 6     6    G    60      12      M      80      NA             NA
# 2. RINGKASAN DESKRIPTIF DATA
summary(data6)
##      Nomor             Nama       Nilai          Nomor.1            Nama.1 
##  Min.   :1.00   Length   :6   Min.   :40.00   Min.   : 7.00   Length   :6  
##  1st Qu.:2.25   N.unique :6   1st Qu.:50.00   1st Qu.: 8.25   N.unique :6  
##  Median :3.50   N.blank  :0   Median :55.00   Median : 9.50   N.blank  :0  
##  Mean   :3.50   Min.nchar:1   Mean   :53.33   Mean   : 9.50   Min.nchar:1  
##  3rd Qu.:4.75   Max.nchar:1   3rd Qu.:60.00   3rd Qu.:10.75   Max.nchar:1  
##  Max.   :6.00                 Max.   :60.00   Max.   :12.00                
##                                                                            
##     Nilai.1         Nomor.2            Nama.2     Nilai.2     
##  Min.   :70.00   Min.   :13.00   Length   :6   Min.   : 80.0  
##  1st Qu.:70.00   1st Qu.:13.75   N.unique :5   1st Qu.: 87.5  
##  Median :70.00   Median :14.50   N.blank  :2   Median : 90.0  
##  Mean   :73.33   Mean   :14.50   Min.nchar:0   Mean   : 90.0  
##  3rd Qu.:77.50   3rd Qu.:15.25   Max.nchar:1   3rd Qu.: 92.5  
##  Max.   :80.00   Max.   :16.00                 Max.   :100.0  
##                  NAs    :2                     NAs    :2
# 3. UJI ANOVA / REGRESI
# x_val = Kategori/Kelompok (Kolom 2)
# y_val = Nilai Angka/Numerik (Kolom 3)

x_val <- as.factor(data6[, 2])
y_val <- as.numeric(gsub(",", ".", as.character(data6[, 3])))

fit <- aov(y_val ~ x_val)
summary(fit)
##             Df Sum Sq Mean Sq
## x_val        5  333.3   66.67
# 3. VISUALISASI BOXPLOT
boxplot(y_val ~ x_val, 
        col = "skyblue",
        main = "Boxplot Perbandingan Nilai antar Kelompok",
        xlab = "Kelompok", 
        ylab = "Nilai")