Eksplorasi dan Identifikasi Permasalahan Kualitas Data Mahasiswa
A. PENDAHULUAN
1. Latar Belakang
Data mahasiswa merupakan salah satu jenis data yang dapat memberikan gambaran mengenai berbagai karakteristik mahasiswa, baik dari sisi identitas maupun aktivitas akademik. Data tersebut dapat mencakup informasi seperti jenis kelamin, umur, semester, program studi, daerah asal, kebiasaan belajar, kehadiran, nilai akademik, penggunaan internet, waktu tidur, serta tingkat kepuasan terhadap perkuliahan. Sebelum digunakan untuk melakukan analisis lebih lanjut, data perlu diperiksa terlebih dahulu untuk memastikan kualitasnya. Data yang belum diperiksa dapat mengandung berbagai permasalahan, seperti nilai yang kosong, penulisan kategori yang tidak seragam, data yang tercatat lebih dari satu kali, maupun nilai yang tidak sesuai dengan kondisi sebenarnya. Permasalahan tersebut dapat memengaruhi hasil pengolahan dan menyebabkan interpretasi data menjadi kurang tepat. Oleh karena itu, dilakukan eksplorasi terhadap dataset mahasiswa untuk mengetahui kondisi data secara keseluruhan serta mengidentifikasi permasalahan yang terdapat di dalamnya. Proses ini menjadi tahap awal yang penting sebelum data digunakan untuk analisis lebih lanjut.
2. Tujuan Membersihkan Data
Proses pembersihan data dilakukan untuk memastikan dataset mahasiswa berada dalam kondisi yang lebih teratur dan dapat digunakan dengan baik untuk tahap analisis berikutnya. Berdasarkan kebutuhan pemeriksaan kualitas data, proses pembersihan memiliki beberapa tujuan utama, yaitu:
01. Mengetahui Kondisi Dataset
Mengetahui kondisi awal dataset mahasiswa, termasuk jumlah data, jumlah variabel, serta karakteristik data yang digunakan.
02. Mengidentifikasi Permasalahan
Mengidentifikasi berbagai permasalahan yang terdapat dalam dataset, seperti missing value, inkonsistensi data, data duplikat, dan nilai yang tidak sesuai.
03. Menemukan Masalah Sebelum Analisis
Mengetahui permasalahan pada dataset sebelum dilakukan analisis lebih lanjut agar kualitas data tidak memengaruhi hasil pengolahan dan interpretasi.
04. Membersihkan dan Merapikan Data
Memperbaiki permasalahan yang ditemukan, menghapus data yang terduplikasi, menangani nilai yang tidak sesuai, serta mengisi nilai kosong agar dataset lebih rapi dan siap digunakan.
B. GAMBARAN DATASET
1. Struktur Dataset
JUMLAH BARIS
1215
JUMLAH VARIABEL
15
STRUKTUR DATA
TERSTRUKTUR
2. Macam-Macam Variabel
| Variabel | Tipe Data |
|---|---|
| ID_Mahasiswa | numeric |
| Nama | character |
| Gender | character |
| Umur | numeric |
| Semester | numeric |
| Program_Studi | character |
| Kota_Asal | character |
| Jam_Belajar_per_Minggu | numeric |
| Kehadiran_Persen | numeric |
| Nilai_Tugas | numeric |
| Nilai_Ujian | numeric |
| Nilai_Akhir | numeric |
| Jam_Internet_per_Hari | numeric |
| Jam_Tidur_per_Hari | numeric |
| Kepuasan_Kuliah | numeric |
C. EKSPLORATIF KUALITAS DATA
Setelah mengetahui gambaran umum dataset, tahap selanjutnya adalah melakukan eksplorasi terhadap kualitas data. Tahap ini dilakukan untuk mengetahui apakah dataset mahasiswa sudah berada dalam kondisi yang baik dan siap digunakan untuk analisis lebih lanjut.
Pemeriksaan difokuskan pada beberapa permasalahan yang dapat ditemukan dalam data, yaitu missing value, inkonsistensi data, duplikasi data, dan noisy data. Identifikasi permasalahan tersebut dilakukan sebelum proses pembersihan agar setiap masalah yang ditemukan dapat ditangani pada tahap berikutnya.
1. Missing Value
Missing value merupakan kondisi ketika terdapat nilai yang kosong atau tidak tersedia pada suatu variabel. Pemeriksaan ini dilakukan untuk mengetahui variabel mana yang memiliki nilai kosong serta jumlahnya.
## Jam_Belajar_per_Minggu Kehadiran_Persen Nilai_Tugas
## 12 10 8
## Nilai_Ujian Kepuasan_Kuliah
## 8 8
2. Inkonsistensi Data
Inkonsistensi data terjadi ketika informasi yang memiliki makna sama ditulis dengan format atau bentuk yang berbeda. Kondisi ini perlu diperiksa karena perbedaan penulisan dapat menyebabkan data yang seharusnya termasuk dalam satu kategori justru terbaca sebagai kategori yang berbeda. Pada dataset mahasiswa, pemeriksaan inkonsistensi dilakukan terutama pada variabel Gender dan Kota_Asal.
## [1] "Laki-laki" "Perempuan" "L" "Wanita" "Female" "P"
## [7] "Male" "Pria"
## [1] "Pekanbaru" "Dumai" "Medan" "Padang" "Jambi" "JAMBI"
## [7] "MEDAN" "pekanbaru" "DUMAI" "padang" "PADANG" "jambi"
## [13] "PEKANBARU"
3. Duplikasi Data
Duplikasi data diperiksa untuk mengetahui apakah terdapat data mahasiswa yang tercatat lebih dari satu kali. Data yang terduplikasi perlu diperhatikan karena dapat menyebabkan satu mahasiswa dihitung lebih dari satu kali dan berpotensi memengaruhi hasil analisis.
- Pemeriksaan ID Mahasiswa
Pemeriksaan ini dilakukan untuk mengetahui apakah terdapat ID mahasiswa yang muncul lebih dari satu kali.
##
## 100032 100096 100213 100425 100435 100443 100557 100761 100769 100844 100866
## 2 2 2 2 2 2 2 2 2 2 2
## 100947 100994 101011 101086
## 2 2 2 2
- Pemeriksaan Duplikat Identik
Pemeriksaan ini dilakukan untuk mengetahui jumlah baris yang memiliki data identik atau tercatat secara berulang.
## [1] 14
- Menampilkan Data Duplikat
Data yang teridentifikasi sebagai duplikat ditampilkan untuk melihat baris data yang tercatat lebih dari satu kali.
## # A tibble: 14 × 15
## ID_Mahasiswa Nama Gender Umur Semester Program_Studi Kota_Asal
## <dbl> <chr> <chr> <dbl> <dbl> <chr> <chr>
## 1 100769 Mahasiswa_0769 Laki-laki 19 3 Statistika Padang
## 2 100032 Mahasiswa_0032 Laki-laki 21 3 Statistika Medan
## 3 100443 Mahasiswa_0443 Laki-laki 20 3 Statistika Pekanbaru
## 4 101086 Mahasiswa_1086 Perempuan 19 4 Matematika Jambi
## 5 100947 Mahasiswa_0947 Laki-laki 22 4 Statistika Padang
## 6 100435 Mahasiswa_0435 Laki-laki 21 5 Statistika Padang
## 7 100213 Mahasiswa_0213 Perempuan 20 3 Statistika Pekanbaru
## 8 100844 Mahasiswa_0844 Perempuan 23 4 Statistika Pekanbaru
## 9 100866 Mahasiswa_0866 Perempuan 22 3 Statistika Medan
## 10 100761 Mahasiswa_0761 Laki-laki 21 3 Statistika Pekanbaru
## 11 100994 Mahasiswa_0994 Perempuan 22 3 Statistika Medan
## 12 100557 Mahasiswa_0557 Laki-laki 21 3 Matematika Pekanbaru
## 13 100425 Mahasiswa_0425 Laki-laki 21 3 Statistika Padang
## 14 100096 Mahasiswa_0096 Perempuan 24 3 Statistika Jambi
## # ℹ 8 more variables: Jam_Belajar_per_Minggu <dbl>, Kehadiran_Persen <dbl>,
## # Nilai_Tugas <dbl>, Nilai_Ujian <dbl>, Nilai_Akhir <dbl>,
## # Jam_Internet_per_Hari <dbl>, Jam_Tidur_per_Hari <dbl>,
## # Kepuasan_Kuliah <dbl>
4. Menampilkan Data Noisy
Data noisy merupakan data yang memiliki nilai tidak wajar atau berada di luar rentang yang seharusnya. Keberadaan data seperti ini perlu diperiksa karena dapat menunjukkan adanya kesalahan dalam pencatatan data dan berpotensi memengaruhi hasil analisis. Oleh karena itu, pemeriksaan dilakukan dengan membandingkan nilai pada setiap variabel dengan rentang yang sesuai berdasarkan karakteristik variabel tersebut.
Pemeriksaan Umur
Pada variabel umur, dilakukan pemeriksaan terhadap nilai yang dianggap berada di luar rentang yang wajar untuk umur mahasiswa.
## [1] 150 -3
Pemeriksaan Kehadiran
Variabel Kehadiran_Persen diperiksa berdasarkan rentang persentase yang seharusnya berada antara 0% hingga 100%. Nilai yang berada di bawah 0% atau melebihi 100% dikategorikan sebagai nilai yang tidak valid.
## [1] -10 125
03. Pemeriksaan Data Akademik
Skala nilai yang digunakan berada pada rentang 0 sampai 100. Pemeriksaan dilakukan pada nilai tugas, nilai ujian, dan nilai akhir untuk mengetahui apakah terdapat nilai yang berada di luar rentang tersebut.
- Nilai Tugas
Pemeriksaan dilakukan untuk mengetahui apakah terdapat nilai tugas yang berada di bawah 0 atau melebihi 100.
## [1] 105 -5
- Nilai Ujian
Pemeriksaan dilakukan untuk mengetahui apakah terdapat nilai ujian yang berada di bawah 0 atau melebihi 100.
## [1] -2 150
- Nilai Akhir
Pemeriksaan dilakukan untuk mengetahui apakah terdapat nilai akhir yang berada di bawah 0 atau melebihi 100.
## [1] -8 120
Pemeriksaan Kepuasan Kuliah
Variabel ini menggunakan skala penilaian 1 sampai 5, sehingga nilai yang berada di luar rentang tersebut dianggap tidak sesuai dengan skala yang telah ditentukan.
## [1] 8 0
Pemeriksaan Jam Internet
nilai di luar rentang 0 hingga 24 jam perlu diidentifikasi.
## [1] 30 -1
D. DATA WRANGLINNG
Setelah permasalahan pada dataset berhasil diidentifikasi, tahap berikutnya adalah melakukan data wrangling. Tahap ini dilakukan untuk memperbaiki berbagai permasalahan yang ditemukan pada dataset, sehingga data menjadi lebih konsisten dan siap digunakan untuk analisis. Proses yang dilakukan meliputi pembersihan data duplikat, perbaikan penulisan data, penyeragaman kategori, penanganan data noisy, serta pengisian nilai yang kosong.
1. Membersihkan Duplikat
Langkah pertama dalam data wrangling adalah menghapus data duplikat identik. Data yang sama secara keseluruhan dapat menyebabkan satu mahasiswa terhitung lebih dari satu kali dan berpotensi memengaruhi hasil analisis.
Kemudian cek jumlah baris dan kolom :
## [1] 1201 15
Jadi setelah dibersihkan, tersisa 1.200 baris
2. Memperbaiki Kapitalisasi Kota Asal
Selanjutnya dilakukan perbaikan pada variabel Kota_Asal. Permasalahan yang ditemukan berupa penggunaan huruf besar dan kecil yang tidak konsisten. Perbedaan penulisan tersebut dapat menyebabkan kota yang sebenarnya sama terbaca sebagai kategori yang berbeda. Oleh karena itu, seluruh nama kota diseragamkan menggunakan format huruf kapital pada awal kata.
## [1] "Pekanbaru" "Dumai" "Medan" "Padang" "Jambi"
3. Menyeragamkan Data Gender
Pada variabel Gender, ditemukan beberapa bentuk penulisan yang memiliki arti sama. Agar setiap kategori dapat dikenali secara konsisten dalam analisis, bentuk penulisan tersebut diseragamkan menjadi dua kategori, yaitu Laki-laki dan Perempuan.
Lalu cek :
##
## Laki-laki Perempuan
## 540 661
Hanya tersisa 2 penulisan gender, yaitu Laki-laki dan Perempuan
4. Menghapus Data Noisy
Setelah data duplikat dan inkonsistensi diperbaiki, tahap berikutnya adalah menangani data noisy. Nilai yang tidak valid atau berada di luar rentang yang seharusnya diubah menjadi NA. Dengan demikian, nilai tersebut tidak digunakan dalam analisis, tetapi baris data mahasiswa tetap dipertahankan.
5. Mengisi Nilai Kosong
Setelah data noisy diubah menjadi nilai kosong, tahap selanjutnya adalah menangani missing value. Pengisian dilakukan menggunakan nilai median pada masing-masing variabel numerik. Median digunakan sebagai nilai pengganti agar data yang kosong dapat terisi tanpa terlalu dipengaruhi oleh nilai ekstrem.
Lalu cek apakah masih ada NA :
## Umur Semester Jam_Belajar_per_Minggu
## 0 0 0
## Kehadiran_Persen Nilai_Tugas Nilai_Ujian
## 0 0 0
## Nilai_Akhir Jam_Internet_per_Hari Jam_Tidur_per_Hari
## 0 0 0
## Kepuasan_Kuliah
## 0
E. TUJUAN ANALISIS
Analisis dilakukan untuk mengidentifikasi hubungan antara Jam_Belajar_per_Minggu dan Jam_Internet_per_Hari terhadap Jam_Tidur_per_Hari. Dengan melihat hubungan antarvariabel tersebut, dapat diketahui apakah durasi penggunaan internet per hari dan waktu belajar per minggu berkaitan dengan pola jam tidur mahasiswa per hari.
Analisis yang dilakukan terdiri dari:
- Regresi linear berganda.
- Uji normalitas residual.
- Uji homoskedastisitas.
- Pengelompokan jam belajar.
- Encoding kategori jam belajar.
- Visualisasi kategori jam belajar.
F. VALIDASI DATA
1. Memeriksa tipe data
## tibble [1,201 × 3] (S3: tbl_df/tbl/data.frame)
## $ Jam_Tidur_per_Hari : num [1:1201] 4.9 7.7 5.6 7.5 6.3 6.3 7 7.1 6.1 5.5 ...
## $ Jam_Internet_per_Hari : num [1:1201] 5.8 3.4 4.4 4.6 5.6 5.9 2.1 5.3 7.4 7.3 ...
## $ Jam_Belajar_per_Minggu: num [1:1201] 3.6 13 13.3 11.8 13.8 20.1 7 14.4 10.4 21.4 ...
2. Memeriksa missing value
## Jam_Tidur_per_Hari Jam_Internet_per_Hari Jam_Belajar_per_Minggu
## 0 0 0
Setelah itu buat Model Regresinya
##
## Call:
## lm(formula = Jam_Tidur_per_Hari ~ Jam_Internet_per_Hari + Jam_Belajar_per_Minggu,
## data = data_mahasiswa)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5.7463 -0.6767 -0.0125 0.6579 13.2201
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 6.478706 0.121952 53.125 <2e-16 ***
## Jam_Internet_per_Hari 0.011616 0.017825 0.652 0.5147
## Jam_Belajar_per_Minggu 0.013893 0.006242 2.226 0.0262 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.078 on 1198 degrees of freedom
## Multiple R-squared: 0.004487, Adjusted R-squared: 0.002825
## F-statistic: 2.7 on 2 and 1198 DF, p-value: 0.06764
G. ANALISIS REGRESI
1. Uji Normalitas
Uji normalitas dilakukan untuk mengetahui apakah residual pada model regresi berdistribusi normal. Pengujian dilakukan menggunakan uji Kolmogorov-Smirnov.
Hipotesis yang digunakan adalah:
- H₀: residual berdistribusi normal.
- H₁: residual tidak berdistribusi normal.
##
## Asymptotic one-sample Kolmogorov-Smirnov test
##
## data: residu
## D = 0.03226, p-value = 0.1641
## alternative hypothesis: two-sided
Hasil Uji
Berdasarkan uji Kolmogorov-Smirnov diperoleh p-value sebesar 0,1641. Karena p-value > 0,05, maka H₀ tidak ditolak. Dengan demikian, residual pada model regresi berdistribusi normal sehingga asumsi normalitas terpenuhi.
2. Uji Heteroskedastisitas
##
## studentized Breusch-Pagan test
##
## data: model
## BP = 0.65795, df = 2, p-value = 0.7197
Hasil Uji
Berdasarkan hasil uji Breusch-Pagan, diperoleh nilai p-value sebesar 0,7197. Karena nilai p-value 0,7197 > 0,05, maka H₀ tidak ditolak. Dengan demikian, dapat disimpulkan bahwa tidak terdapat gejala heteroskedastisitas pada model regresi, sehingga varians residual dapat dianggap homogen.
I. INTEGRASI DATA
Integrasi Data 1
Integrasi data dilakukan dengan menggabungkan dua dataset yang memiliki variabel kunci yang sama, yaitu ID_Mahasiswa. Dataset pertama berisi informasi mengenai jam tidur, jam penggunaan internet, dan jam belajar per minggu. Dataset kedua berisi kategori belajar mahasiswa. Penggabungan dilakukan untuk memastikan data dari kedua dataset dapat dipasangkan dengan tepat dan menghasilkan dataset yang lebih lengkap untuk analisis.
- Data 1
| ID_Mahasiswa | Jam_Tidur_per_Hari | Jam_Internet_per_Hari | Jam_Belajar_per_Minggu |
|---|---|---|---|
| 100740 | 4.9 | 5.8 | 3.6 |
| 100789 | 7.7 | 3.4 | 13.0 |
| 100044 | 5.6 | 4.4 | 13.3 |
| 100156 | 7.5 | 4.6 | 11.8 |
| 100495 | 6.3 | 5.6 | 13.8 |
| 100971 | 6.3 | 5.9 | 20.1 |
- Data 2
| ID_Mahasiswa | Kategori_Belajar |
|---|---|
| 100740 | Rendah |
| 100789 | Sedang |
| 100044 | Sedang |
| 100156 | Sedang |
| 100495 | Sedang |
| 100971 | Tinggi |
Encoding
Encoding dilakukan untuk mengubah kategori belajar yang berbentuk teks menjadi kode numerik agar data dapat digunakan dalam proses analisis statistik. Berdasarkan kategori yang telah ditentukan, Rendah diberi kode 1, Sedang diberi kode 2, dan Tinggi diberi kode 3. Dengan adanya proses encoding ini, kategori belajar dapat direpresentasikan dalam bentuk angka tanpa mengubah urutan tingkat kategorinya.
| ID_Mahasiswa | Kategori_Belajar | Jam_Belajar_Factor | Jam_Belajar_Code |
|---|---|---|---|
| 100740 | Rendah | Rendah | 1 |
| 100789 | Sedang | Sedang | 2 |
| 100044 | Sedang | Sedang | 2 |
| 100156 | Sedang | Sedang | 2 |
| 100495 | Sedang | Sedang | 2 |
| 100971 | Tinggi | Tinggi | 3 |
Integrasi Data 2
Integrasi Data 2 dilakukan dengan menggabungkan data Jam_Internet_per_Hari dengan hasil encoding Jam_Belajar_per_Minggu. Penggabungan dilakukan menggunakan ID_Mahasiswa sebagai kunci utama agar hasil encoding dapat terhubung dengan mahasiswa yang sesuai. Dengan demikian, data hasil penggabungan dapat digunakan untuk analisis selanjutnya.
- Data 1
| ID_Mahasiswa | Jam_Internet_per_Hari |
|---|---|
| 100740 | 5.8 |
| 100789 | 3.4 |
| 100044 | 4.4 |
| 100156 | 4.6 |
| 100495 | 5.6 |
| 100971 | 5.9 |
- Data 2
| ID_Mahasiswa | Jam_Belajar_Factor | Jam_Belajar_Code |
|---|---|---|
| 100740 | Rendah | 1 |
| 100789 | Sedang | 2 |
| 100044 | Sedang | 2 |
| 100156 | Sedang | 2 |
| 100495 | Sedang | 2 |
| 100971 | Tinggi | 3 |
- Data Gabungan
| ID_Mahasiswa | Jam_Internet_per_Hari | Jam_Belajar_Factor | Jam_Belajar_Code |
|---|---|---|---|
| 100001 | 5.6 | Rendah | 1 |
| 100002 | 2.7 | Sedang | 2 |
| 100003 | 5.6 | Sedang | 2 |
| 100004 | 5.4 | Tinggi | 3 |
| 100005 | 5.2 | Tinggi | 3 |
| 100006 | 4.2 | Sedang | 2 |
Encoding
Encoding dilakukan dengan mengubah kategori Jam_Belajar_per_Minggu menjadi bentuk faktor dan kode numerik. Kategori Rendah diberi kode 1, Sedang diberi kode 2, dan Tinggi diberi kode 3. Hasil encoding ini kemudian digunakan dalam proses integrasi data agar dapat digunakan untuk analisis selanjutnya.
- Encoding Integrasi Data 2
| ID_Mahasiswa | Kategori_Belajar | Jam_Belajar_Factor | Jam_Belajar_Code |
|---|---|---|---|
| 100740 | Rendah | Rendah | 1 |
| 100789 | Sedang | Sedang | 2 |
| 100044 | Sedang | Sedang | 2 |
| 100156 | Sedang | Sedang | 2 |
| 100495 | Sedang | Sedang | 2 |
| 100971 | Tinggi | Tinggi | 3 |
J. KESIMPULAN
Berdasarkan seluruh proses analisis yang telah dilakukan, dapat disimpulkan bahwa data mahasiswa telah melalui tahapan pembersihan, validasi, analisis regresi, pengujian asumsi, integrasi data, dan encoding.
Hasil analisis menunjukkan bahwa Jam_Belajar_per_Minggu dan Jam_Internet_per_Hari digunakan untuk melihat hubungannya terhadap Jam_Tidur_per_Hari melalui regresi linear berganda. Hasil uji normalitas menunjukkan bahwa residual memenuhi asumsi normalitas karena nilai p-value lebih besar dari 0,05. Selain itu, hasil uji Breusch-Pagan juga menunjukkan nilai p-value lebih besar dari 0,05, sehingga tidak terdapat gejala heteroskedastisitas dan varians residual dapat dianggap homogen.
Selanjutnya, data Jam_Belajar_per_Minggu dikelompokkan menjadi kategori Rendah, Sedang, dan Tinggi, kemudian dilakukan encoding dengan kode 1, 2, dan 3. Integrasi data dilakukan menggunakan ID_Mahasiswa sebagai kunci untuk memastikan data dari setiap mahasiswa dapat terhubung dengan tepat.
Dengan demikian, data yang telah dibersihkan, divalidasi, dianalisis, diintegrasikan, dan diencoding menjadi lebih siap untuk digunakan dalam analisis statistik selanjutnya.