Tahap persiapan data merupakan langkah fundamental sebelum analisis, yang mencakup pengumpulan dan pembersihan data.
nama_A <- c("Ani", "Budi", "Cahya", "Danu", "Eka", "Fitri", "Gilang", "Hani", "Indra", "Jihan")
bb_A <- c(55, 65, 50, 70, 60, 58, 75, 52, 80, 53)
tb_A <- c(160, 175, 155, 180, 165, 162, 178, 158, 185, 159)
kelas_A <- data.frame(nama_A, bb_A, tb_A)
nama_B <- c("Alya", "Bintang", "Rizki", "Ana", "Nanda", "Dimas", "Ali", "Agus", "Dwi", "Putri")
bb_B <- c(50, 55, 53, 60, 58, 70, 52, 57, 59, 54)
tb_B <- c(145, 160, 172, 155, 160, 170, 148, 162, 160, 143)
kelas_B <- data.frame(nama_B, bb_B, tb_B)
Kita tinggal menuliskan variabel yang kita tentukan tadi di bawah kodingan kita Misal, kelas_A <- data.frame(nama_A, bb_A, tb_A) kelas_A nah lalu kita run keduanya
Ukuran pemusatan data adalah nilai statistik yang menggambarkan titik tengah atau nilai yang paling mewakili kumpulan data. Ukuran ini sering disebut sebagai “nilai pusat” data. Tiga ukuran pemusatan data yang umum adalah mean (rata-rata), median (nilai tengah), dan modus (nilai yang paling sering muncul).
Mean merupakan nilai rata-rata dari sebuah data
mean_bbA <- mean(bb_A)
cat("mean_bbA:", mean_bbA, "kg", "\n")
## mean_bbA: 61.8 kg
Median merupakan nilai tengah dari sebuah data
median_bbA <- median(bb_A)
cat("median_bbA:", median_bbA, "kg", "\n")
## median_bbA: 59 kg
Modus merupakan nilai yang paling sering muncul dari sebuah data
#Untuk Fungsi Custom
modus <- function(x) {
ux <- unique(x)
ux[which.max(tabulate(match(x, ux)))]
}
modus_bbA <- modus(bb_A)
cat("modus_bbA:", modus_bbA, "kg", "\n")
## modus_bbA: 55 kg
Ukuran penyebaran data (atau dispersi) adalah nilai statistik yang menggambarkan seberapa jauh data tersebar dari nilai pusatnya. Dengan kata lain, ukuran ini menunjukkan tingkat variasi atau keragaman dalam suatu kumpulan data. Jika nilai penyebarannya kecil, data cenderung mengumpul di sekitar nilai rata-rata. Sebaliknya, jika nilainya besar, data lebih tersebar luas.
Beberapa ukuran penyebaran data yang umum digunakan adalah range (rentang), variance (variansi), dan standard deviation (simpangan baku). Ketiga nilai ini juga akan dihitung pada data kelas A.
range_bbA <- range(bb_A)
cat("range_bbA:", range_bbA, "\n")
## range_bbA: 50 80
var_bbA <- var(bb_A)
cat("var_bbA:", var_bbA, "\n")
## var_bbA: 106.6222
sd_bbA <- sd(bb_A)
cat("sd_bbA:", sd_bbA, "\n")
## sd_bbA: 10.3258
Untuk memahami sebaran data dan mengidentifikasi karakteristiknya, kita akan menggunakan dua jenis visualisasi: histogram dan boxplot. • Histogram: Menunjukkan distribusi frekuensi data. Dari histogram, kita bisa melihat pola sebaran data (misalnya, normal atau miring). • Boxplot: Merangkum lima angka penting dari data (minimum, kuartil pertama, median, kuartil ketiga, dan maksimum). Boxplot sangat efektif untuk mengidentifikasi outlier (data pencilan).
hist(kelas_A$bb_A, col = "skyblue",
main= "Histogram Berat Badan Mahasiswa Kelas A",
xlab = "Berat Badan (kg)")
Sebagian besar mahasiswa memiliki berat badan di rentang 50–55 kg,
dengan frekuensi terbanyak (4 ma- hasiswa). Frekuensi ini menurun
drastis pada rentang 55–60 kg (2 mahasiswa), dan terus menurun pada
rentang berikutnya. Hal ini menunjukkan bahwa berat badan mahasiswa Kelas A didominasi oleh kelompok dengan berat badan yang lebih ringan, dan semakin sedikit mahasiswa yang memiliki berat badan lebih berat.
boxplot(kelas_A$bb_A, horizontal = TRUE,
main = "Boxplot Berat Badan Mahasiswa Kelas A",
col = "coral")
Berdasarkan boxplot di atas, berat badan mahasiswa Kelas A terdistribusi
secara bervariasi dengan median 59 kg dan rentang data dari 50 kg hingga
80 kg, tanpa adanya data pencilan (outlier). Untuk memastikan nilai
kuartil pada boxplot, kita dapat menghitungnya secara manual menggunakan
kode R berikut:
kuartil_bb_A <- quantile(kelas_A$bb_A, probs = c(0.25, 0.50, 0.75))
kuartil_bb_A
## 25% 50% 75%
## 53.50 59.00 68.75
Dari hasil perhitungan kuartil, diperoleh poin-poin berikut: • 25% (Kuartil 1): Nilai 53.5 kg berarti 25% mahasiswa memiliki berat badan di bawah 53.5 kg. • 50% (Median/Kuartil 2): Nilai 59 kg berarti 50% mahasiswa memiliki berat badan di bawah 59 kg. Nilai ini cocok dengan garis median pada boxplot. • 75% (Kuartil 3): Nilai 68.75 kg berarti 75% mahasiswa memiliki berat badan di bawah 68.75 kg. Nilai kuartil ini memberikan informasi yang lebih akurat dan terperinci tentang sebaran data dibandingkan hanya melihat boxplot secara visual.
Berdasarkan hasil perhitungan, rata-rata berat badan mahasiswa Kelas A adalah 61,8 kg, dengan median sebesar 59 kg dan modus 55 kg. Rentang berat badan pada kelas ini cukup lebar, yaitu antara 50 kg hingga 80 kg, dengan simpangan baku 10,33 kg yang menunjukkan variasi data cukup tinggi. Mayoritas mahasiswa Kelas A memiliki berat badan pada kisaran 50–55 kg, sedangkan jumlah mahasiswa berkurang seiring meningkatnya berat badan, sehingga distribusi data cenderung condong ke kelompok berat badan yang lebih rendah.
Tinggi badan mahasiswa Kelas A berada pada rentang 155 cm hingga 185 cm, dengan median berada di sekitar nilai tengah rentang tersebut. Sebagian besar mahasiswa Kelas A memiliki tinggi badan di atas 160 cm, yang mengindikasikan bahwa rata-rata tinggi badan di kelas ini tergolong relatif tinggi. Sementara itu, Kelas B memiliki tinggi badan antara 143 cm hingga 172 cm, dengan rata-rata yang lebih rendah dan rentang data yang lebih sempit, menunjukkan bahwa tinggi badan mahasiswa Kelas B lebih seragam atau homogen dibandingkan Kelas A.