Monday, January 21, 2019

#Belajar-R : Mengubah Data Numerik Menjadi Data Kategorik


Hos geldiniz arkadas! Selamat datang di Kelas Statistik.

Pada kesematan kali ini, kita akan melanjutkan untuk menganalisis nilai semester kelas XII SMA Budikarya yang kemarin.  Sekarang kita akan membantu guru Biologi mengetahui nama-nama siswa yang harus mengikuiti ujian perbaikan atau remedial.  Adapun  siswa yang harus mengikuti remedial adalah mereka yang mendapatkan nilai dibawah 70.

Tanpa perlu panjang lebar, mari kita mulai exercise ini. Jika ada yang belum mempunyai data nilai kelas XII SMA Budikarya, silakan download di sini Download Data.

Karena output yang ingin kita dapatkan hanyalah dua, yaitu “lulus” atau “remedial”, fungsi yang akan kita gunakan adalah ifelse.

            Ifelse(test, yes, no)
            test     : kondisi testing
            yes      : nilai ketika kondisi benar
            no       : nilai ketika kondisi salah.

Dalam kasus yang mau kita selesaikan, kita menginginkan adanya keterangan “Lulus” pada siswa yang nilai Biologinya 70 keatas, dan keterangan “remedial” pada siswa yang nilai Biologinya tidak mencapai 70.

>semester$ketBio <- ifelse (semester$Bio < 70, “Remedial”, “Lulus”)



Bagaimana? Gampangkan?
Karena tiga bulan lagi Ujian Nasional, bapak kepala sekolah membuat kebijakan untuk mengadakan les setelah jam sekolah. Rencananya, nanti akan ada empat kelas. Siswa akan dikelompokkan menurut capaian rata-rata nilai dari ketiga mata pelajaran tersebut, yaitu:

       1.      Kelas A :  [76 – 100)
       2.      Kelas B : [67 – 76)
       3.      Kelas C : [58.83 – 67)
       4.      Kelas D : [0 – 58.83)

Untuk dapat membagi siswa menjadi empat kelas seperti yang diinginkan bapak kepala sekolah, kita bisa menggunakan fungsi cut.
Cut(x, breaks, labels = NULL)           : vector/variabel input
Breaks                                                 : vector dari titik potong/cutting point
Labels                                                  : label dari setiap kategori

>semester$KelasLes <- cut(semester$ratarata, breaks=c(0, 58.83, 67, 76, 100), labels=c(“D”, “C”, “B”, “A”))



Kita bisa mengetahui jumlah siswa yang harus remidial Biologi dan jumlah siswa dimasing-masing kelas les dengan memanfaatkan fungsi table.



Dengan memanfaatkan fungsi ifelse dan cut, kita dapat mengubah data numerik menjadi kategorik dengan mudah. Silakan kalian eksplore sendiri fungsi-fungsi tersebut.
Sekian sharing ilumnya untuk kali ini. Jangan lupa untuk membaca postingan-postingan #Belajar-R yang lainnya agar lebih mendalami tentang applikasi R. Terima kasih.

NB: "semester" dalam codingan di atas adalah nama dari data frame yang saya gunakan.

0 comments:

Post a Comment