Cara mengganti beberapa nilai dalam satu bingkai data menggunakan dplyr


Anda dapat menggunakan sintaks dasar berikut untuk mengganti beberapa nilai dalam bingkai data di R menggunakan fungsi dalam paket dplyr :

 library (dplyr)

df %>%
  mutate(var1 = recode(var1, ' oldvalue1 ' = ' newvalue1 ', ' oldvalue2 ' = ' newvalue2 '), 
         var2 = recode(var2, ' oldvalue1 ' = ' newvalue1 ', ' oldvalue2 ' = ' newvalue2 '))

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Ganti beberapa nilai menggunakan dplyr

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

 #create data frame
df <- data. frame (conf=c('East', 'East', 'West', 'West', 'North'),
                 position=c('Guard', 'Guard', 'Guard', 'Guard', 'Forward'),
                 dots=c(22, 25, 29, 13, 18))

#view data frame
df

   conf position points
1 East Guard 22
2 East Guard 25
3 West Guard 29
4 West Guard 13
5 North Forward 18

Sekarang misalkan kita ingin mengganti nilai-nilai berikut dalam bingkai data:

  • kolom ‘konf’:
    • Gantikan “Timur” dengan “E”
    • Ubah “Barat” menjadi “W”
    • Gantikan “Utara” dengan “N”
  • Kolom “Posisi”:
    • Ubah “Penjaga” menjadi “G”
    • Ubah “Teruskan” menjadi “F”

Kita dapat menggunakan fungsi mutate() dan recode() untuk melakukan ini:

 library (dplyr)

#replace multiple values in conf and position columns
df %>%
  mutate(conf = recode(conf, ' East ' = ' E ', ' West ' = ' W ', ' North ' = ' N '), 
         position = recode(position, ' Guard ' = ' G ', ' Forward ' = ' F '))

  conf position points
1EG 22
2 EG 25
3 WG 29
4 WG 13
5 NF 18

Perhatikan bahwa setiap nilai di kolom “conf” dan “position” telah diganti dengan nilai tertentu.

Perhatikan juga bahwa nilai di kolom “poin” tetap tidak berubah.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya menggunakan dplyr:

Cara mengkode ulang nilai menggunakan dplyr
Bagaimana cara mengganti NA dengan Zero di dplyr
Cara memfilter baris yang berisi string tertentu menggunakan dplyr

Tambahkan komentar

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