Data Mining Menggunakan Package Lattice in (R)
Assalamu’alaikum pembaca, kali ini penulis akan sharing sedikit tentang data mining dengan menggunakan package lattice().
enjoy and happy reading :).
Apa itu Data Mining ?
Data mining merupakan salah satu teknik atau proses penemuan pola yang menarik dari data dalam jumlah besar. Merupakan evolusi alami dari teknologi database, dan merupakan metode yang paling banyak dibutuhkan, dengan aplikasi sangat luas. Singkatnya data mining menurut penulis merupakan bagaimana cara kita seorang data analys membuat data yang didapatkan se informatif mungkin dan mudah dipahami oleh masyarakat.
Contoh 1:2006 Birth Data
Jadi yang akan penulis gunakan saat ini adalah data kelahiran pada tahun 2006. Nah data tersebut dapat diperoleh dari Package Nutshell, data tersebut terdiri dari 427,323 observasi dan 13 variabel, yang termasuk hari kelahiran sesuai dengan bulan dan hari dalam seminggu (DOB_MM, DOB_WK), berat bayi ketika lahir(DBWT) dan penambahan berat badan selama ibu mengandung (WTGAIN), jenis kelamin bayi dan nilai APGAR ketika lahir, (SEX dan APGAR5), dan yang lainnya.
Library install
Sebelum dimulai yang dilakukan terlebih dahulu adalah menginstal pacgake lattice()
dan nutshell
terlebih dahulu, dan jangan lupa untuk memanggilnya kembali.
library(lattice)library(nutshell)
Preprocessing Data
Oke selanjutnya penulis kita panggil dulu nama data dan mencantumkan informasi untuk 5 kelahiran pertama. Jangan lupa juga untuk menampilkan struktur dari dataset juga mengecek missing value pada dataset
data(births2006.smpl)head(births2006.smpl)str(births2006.smpl)summary(is.na(births2006.smpl))
setelah melihat struktur data dan mengcek missing value pembaca harus sudah menegerti secara garis besar terkait data apa yang akan digunakan dan insight apa yang bisa didapat, hal tersebut merupakan salah satu sense seorang data analys, cara mengasahnya dengan terus berlatih dan memahami data yang dinamis.
Oke setelah kita lihat ternyata ada missing value yang cukup besar yang harus dilakukan selanjutnya adalah mengisi missing value tersebut dengan suatu nilai. Ingat bukan membuangnya ya, karena menurut penulis ketika membuang data tanpa dasar akan mengurangi informasi yang ada. Pengisian missing value tersebut banyak cara ada menggunakan estimasi rata-rata, nilai median, modul, dan masih banyak lagi. Untuk bagai mana cara mengisi missing value penulis akan menjelaskan di tulisan berikutnya, jadi ikuti terusya jadi kali ini peulis kana menganggap datanya no missing value atau tetap menggunakan data tersebut.
Data Mining
Pertama penulis akan menggunakan barchart, barchart untuk mnegetahui kelahiran perminggu menurut hari, bahwa lebih sedikit kelahiran diakhir pecan (1=Minggu, 2=Senin, …, 7= Sabtu), (DOB_WK). hal ini mungkin ada kaitannya dengan fakta bahwa banyak bayi dilahirkan melalui opreasi Caesar, dan bahwa persalinan persalinan tersebut biasanya dijadwalkan selama seminggu dan bukan akhir pekan.
Untuk menindaklanjuti hipotesis ini, penulis memperoleh frekuensi dalam klasifikasi dua arah
kelahiran sesuai dengan hari dalam seminggu dan metode persalinan. Tidak termasuk kelahiran metode pengiriman yang tidak diketahui, penulis memisahkan diagram batang frekuensi untuk hari pengiriman minggu sesuai dengan metode pengiriman.
births.dow <- table(births2006.smpl$DOB_WK)barchart(births.dow,ylab ="Day of the Week", color = "black")
barchart(dob.dm.tbl, ylab= "Day of Week")barchart(dob.dm.tbl, horizontal = F, groups = F , xlab = "Day of Week", col="green")
penulis menggunakan grafik pada lattice()
(teralis) untuk mengkondisikan histogram kerapatan pada nilai-nilai variabel ketiga. Variabel untuk multiple births (single births to births with five offsprings (quintuplets) or more) dan mthod of delivery adalah variabel pengkondisian penulis memisahkan histogram berat badan lahir sesuai dengan variabel-variabel ini.
histogram(~DBWT|DPLURAL, data = births2006.smpl, layout = c(1,5), col = "red")histogram(~DBWT|DMETH_REC, data = births2006.smpl, layout = c(1,3), col = "green")
Seperti yang diharapkan, berat lahir menurun dengan banyak kelahiran, sedangkan berat lahir sebagian besar tidak terpengaruh oleh metode persalinan. Salah satu metode untuk mengahaluskan hasinya adalah dengan menggunkana plot densitas
densityplot(~DBWT|DPLURAL, data = births2006.smpl, layout=c(1,5), plot.points = F, col = "black")densityplot(~DBWT, groups = DPLURAL, data = births2006.smpl, plot.points = F)
xy plot menunjukkan dengan sangat jelas bahwa hanya ada beberapa pengamatan dalam kelompok terakhir, sementara sebagian besar kelompok lain memiliki banyak pengamatan (yang membuat titik-titik pada titik plot “bertemu satu sama lain”); untuk kelompok dengan banyak pengamatan histogram akan menjadi metode grafis yang disukai karena lebih mudah untuk melihat sebarannya.
xyplot(DBWT~WTGAIN, data = births2006.smpl, col = "black")xyplot(DBWT~WTGAIN|DPLURAL, data = births2006.smpl, layout = c(1,5), col = "black")smoothScatter(births2006.smpl$WTGAIN, births2006.smpl$DBWT)
Penulis juga menggambarkan Box Plot birth weight terhadap skor APGAR dan box plot berat lahir terhadap hari pengiriman minggu. Penulis tidak akan berharap banyak hubungan antara birth wight dan hari pengiriman minggu; tidak ada alasan mengapa bayi yang lahir pada akhir pekan harus lebih berat atau lebih ringan daripada bayi yang lahir selama seminggu. Skor APGAR adalah indikasi status kesehatan bayi baru lahir, dengan skor rendah menunjukkan bahwa bayi baru lahir mengalami kesulitan. Box plot berat lahir terhadap skor APGAR menunjukkan hubungan yang kuat. Bayi dengan berat badan lahir rendah sering memiliki skor APGAR yang rendah karena kesehatan mereka terganggu oleh berat badan lahir rendah dan komplikasinya yang terkait.
boxplot(DBWT~APGAR5, data = births2006.smpl, ylab = "DBWT", xlab ="APGAR" )bwplot(DBWT~factor(APGAR5)|factor(SEX), data = births2006.smpl, xlab = "APGAR5")
Additional Comment
Penggunaan package lattice dapat memudahkan pembaca awam untuk memahami dataset yang besar yang divisualisasikan dengan baik, dalam package lattice ini juga dpat di explore lebih jauh lagi karena penulis hanya menunjukan sebagian besarnya saja, sisanya dapat dikembangkan sesuai kreatifitas masing masing opembaca dan penyesuaian dataset.
Selamat mencoba :)
Wassalamu’alaikum
Reference
#https://ocw.upj.ac.id/files/Handout-TIF311-DM-1.pdf
#Data Mining and Analytics with R (johannes Ledolter)