
Mengubah data numerik menjadi kategori biasanya kita temui dalam mengolah data berbentuk tabel/tabular. Misalkan saja mengolah data nilai ujian. Kalau datanya dikit sih biasanya menggunakan excel cukup ringkas, namun bila datanya sangat banyak tentu akan sangat merepotkan juga. Mengubah data numerik menjadi kategorikal pernah dibahas di https://softscients.com/2020/05/29/mengubah-data-kategori-menjadi-numerik-secara-cepat/#gsc.tab=0 serta juga di https://softscients.com/2020/04/11/buku-belajar-dasar-dasar-statistika-dengan-r-manipulasi-data-frame-dengan-dplyr/#gsc.tab=0
Manipulasi data tabular menggunakan R jauh lebih mudah daripada menggunakan excel ataupun bahasa Python hal ini dikarenakan adanya package dplyr yang sangat mudah dipahami seperti cara kerja di excel.
Mutate
Sebelum membahas mengenai mengubah data numerik menjadi kategori, saya mulai dari perintah mutate() yang digunakan untuk menambah kolom pada package dplyr https://softscients.com/2020/04/11/buku-belajar-dasar-dasar-statistika-dengan-r-manipulasi-data-frame-dengan-dplyr/#gsc.tab=0 . Misalkan saya punya dataset berikut
no nilai 1 1 60 2 2 70 3 3 80 4 4 75 5 5 80 6 6 90 7 7 98 8 8 55
kita akan menambah kolom dengan nama grade
dat = dat %>% mutate(grade="-")
isinya masih kosong
no nilai grade 1 1 60 - 2 2 70 - 3 3 80 - 4 4 75 - 5 5 80 - 6 6 90 - 7 7 98 - 8 8 55 -
Mengubah data numerik menjadi kategori
Untuk Mengubah data numerik menjadi kategori kita bisa menggunakan if else dengan 2 bentuk yaitu
- ifelse
- if_else
keduanya sama penggunaanya hanya saja untuk if_else diberikan 3 nilai dengan nilai ke 3 untuk missing value kalau kondisi if else tidak terpenuhi, misalkan saja kita punya aturan grade nilai sebagai berikut
- nilai A jika 90 sd 100
- nilai B jika 70 sd 89
- nilai C jika 30 sd 69
- nilai D jika kurang dari 30
maka kode if else yang digunakan yaitu
dat = dat %>% mutate(grade=ifelse(nilai>=90 & nilai<=100,"A", ifelse(nilai>=70 & nilai <=89,"B", ifelse(nilai>=30 & nilai <=69,"C","D"))))
hasil dari mengubah data numerik menjadi kategori yaitu
no nilai grade 1 1 60 C 2 2 70 B 3 3 80 B 4 4 75 B 5 5 80 B 6 6 90 A 7 7 98 A 8 8 55 C
Bagaimana menurut kalian cara mudah mengubah data numerik menjadi kategori? mudah yaa