Cara menulis pernyataan kasus di r (dengan contoh)
Pernyataan kasus adalah jenis pernyataan yang menelusuri kondisi dan mengembalikan nilai ketika kondisi pertama terpenuhi.
Cara termudah untuk mengimplementasikan pernyataan case di R adalah dengan menggunakan fungsi case_when() dari paket dplyr :
library (dplyr) df %>% mutate(new_column = case_when( col1 < 9 ~ ' value1 ', col1 < 12 ~ ' value2 ', col1 < 15 ~ ' value3 ', TRUE ~ ' Great '))
Fungsi khusus ini melihat nilai di kolom bernama col1 dan mengembalikan:
- “ nilai1 ” jika nilai pada kolom1 kurang dari 9
- “ nilai2 ” jika nilai pada kolom1 kurang dari 12
- “ nilai3 ” jika nilai pada kolom2 kurang dari 15
- “ nilai4 ” jika tidak ada kondisi sebelumnya yang benar
Perhatikan bahwa TRUE setara dengan pernyataan “lainnya”.
Contoh berikut menunjukkan cara menggunakan fungsi ini dalam praktiknya.
Contoh: pernyataan kasus di R
Misalkan kita memiliki bingkai data berikut di R:
#create data frame df <- data. frame (player=c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), points=c(6, 8, 9, 9, 12, 14, 15, 17, 19, 22)) #view data frame df player points 1 1 6 2 2 8 3 3 9 4 4 9 5 5 12 6 6 14 7 7 15 8 8 17 9 9 19 10 10 22
Kita dapat menggunakan sintaks berikut untuk menulis pernyataan kasus yang membuat kolom baru bernama kelas yang nilainya ditentukan oleh nilai pada kolom poin :
library (dplyr) #create new column using case statement df %>% mutate(class = case_when( points < 9 ~ ' Bad ', points < 12 ~ ' OK ', points < 15 ~ ' Good ', TRUE ~ ' Great ')) player points class 1 1 6 Bad 2 2 8 Bad 3 3 9 OK 4 4 9 OK 5 5 12 Good 6 6 14 Good 7 7 15 Great 8 8 17 Great 9 9 19 Great 10 10 22 Great
Pernyataan kasus melihat nilai di kolom poin dan mengembalikan:
- “ Buruk ” jika nilai pada kolom poin kurang dari 9
- “ OK ” jika nilai pada kolom poin kurang dari 12
- “ Baik ” jika nilai pada kolom poin kurang dari 15
- “ Hebat ” jika tidak ada kondisi sebelumnya yang benar
Kolom baru disebut class , karena itulah nama yang kita tentukan dalam fungsi mutate() .
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:
Cara menggunakan pernyataan If dengan beberapa kondisi di R
Cara menulis pernyataan If Else bersarang di R
Cara menulis fungsi tryCatch() pertama Anda di R