Dplyr: cara mengubah level faktor menggunakan mutate()


Anda dapat menggunakan sintaks dasar berikut di dplyr untuk mengubah level variabel faktor menggunakan fungsi mutate() :

 library (dplyr)

df <- df %>% mutate(team=recode(team,
                                ' H ' = ' Hawks ',
                                ' M ' = ' Mavs ',
                                ' C ' = ' Cavs '))

Sintaks khusus ini membuat perubahan berikut pada variabel tim dalam bingkai data:

  • ‘H’ menjadi ‘Elang’
  • ‘M’ menjadi ‘Mavs’
  • ‘C’ menjadi ‘Cavs’

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Ubah level faktor menggunakan mutate()

Misalkan kita memiliki kerangka data berikut di R yang berisi informasi tentang berbagai pemain bola basket:

 #create data frame
df <- data. frame (team=factor(c('H', 'H', 'M', 'M', 'C', 'C')),
                 dots=c(22, 35, 19, 15, 29, 23))

#view data frame
df

  team points
1:22 a.m.
2:35 a.m.
3 M 19
4 M 15
5 C 29
6 C 23

Kita dapat menggunakan sintaks berikut dengan fungsi mutate() dari paket dplyr untuk mengubah level variabel tim :

 library (dplyr)

#change factor levels of team variable
df <- df %>% mutate(team=recode(team,
                                ' H ' = ' Hawks ',
                                ' M ' = ' Mavs ',
                                ' C ' = ' Cavs '))

#view updated data frame
df

   team points
1 Hawks 22
2 Hawks 35
3 Mavs 19
4 Mavs 15
5 Cavs 29
6 Cavs 23

Dengan menggunakan sintaks ini, kami dapat membuat perubahan berikut pada variabel tim di bingkai data:

  • ‘H’ menjadi ‘Elang’
  • ‘M’ menjadi ‘Mavs’
  • ‘C’ menjadi ‘Cavs’

Kita dapat memverifikasi bahwa level faktor telah diubah menggunakan fungsi level () :

 #display factor levels of team variable
levels(df$team)

[1] “Cavs” “Hawks” “Mavs” 

Perhatikan juga bahwa Anda dapat memilih untuk mengubah satu tingkat faktor saja, bukan semuanya.

Misalnya, kita dapat menggunakan sintaks berikut untuk mengganti hanya “H” dengan “Hawks” dan membiarkan level faktor lainnya tidak berubah:

 library (dplyr)

#change one factor level of team variable
df <- df %>% mutate(team=recode(team, ' H ' = ' Hawks '))

#view updated data frame
df

   team points
1 Hawks 22
2 Hawks 35
3 M 19
4 M 15
5 C 29
6 C 23

Perhatikan bahwa “H” digantikan oleh “Hawks”, namun dua tingkat faktor lainnya tetap tidak berubah.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di dplyr:

Cara menghapus baris menggunakan dplyr
Cara memilih kolom berdasarkan indeks menggunakan dplyr
Cara memfilter baris yang berisi string tertentu menggunakan dplyr

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *