A: cara menggunakan grepl dengan banyak model


Anda dapat menggunakan sintaks dasar berikut dengan fungsi grepl() di R untuk memfilter baris dalam bingkai data yang berisi salah satu dari beberapa pola string dalam kolom tertentu:

 library (dplyr)

new_df <- filter(df, grepl(paste(my_patterns, collapse=' | '), my_column))

Sintaks khusus ini memfilter bingkai data untuk baris yang nilai kolomnya disebut my_column berisi salah satu pola string dalam vektor yang disebut my_patterns .

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: cara menggunakan grepl() dengan banyak model di R

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

 #create data frame
df <- data. frame (team=c('Mavs', 'Hawks', 'Nets', 'Heat', 'Cavs'),
                 points=c(104, 115, 124, 120, 112),
                 status=c('Bad', 'Good', 'Excellent', 'Great', 'Bad'))

#view data frame
df

   team points status
1 Mavs 104 Bad
2 Hawks 115 Good
3 Nets 124 Excellent
4 Heat 120 Great
5 Cavs 112 Bad

Misalkan kita ingin memfilter bingkai data agar hanya berisi baris di mana string kolom status berisi salah satu pola string berikut:

  • ‘BAGUS’
  • ‘Abu-abu’
  • ‘Mantan’

Kita dapat menggunakan sintaks berikut dengan fungsi grepl() untuk melakukan ini:

 library (dplyr)

#define patterns to search for
my_patterns <- c(' Good ', ' Gre ', ' Ex ')

#filter for rows where status column contains one of several strings
new_df <- filter(df, grepl(paste(my_patterns, collapse=' | '), status))

#view results
new_df

   team points status
1 Hawks 115 Good
2 Nets 124 Excellent
3 Heat 120 Great

Perhatikan bahwa bingkai data telah difilter agar hanya berisi baris di mana string di kolom status berisi salah satu dari tiga pola yang kami tentukan.

Perhatikan bahwa menggunakan fungsi Paste() dengan argumen Collapses=’|’ kami sebenarnya mencari string “Good|Gre|Ex” di kolom status .

Sejak | Simbol di R berarti “ATAU”, kami dapat menemukan baris yang berisi “Baik” atau Gre” atau “Ex” di kolom status .

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:

Cara memutasi variabel jika kolom berisi string menggunakan dplyr
Cara menghapus karakter pertama dari string menggunakan dplyr
Cara mengganti string pada kolom menggunakan dplyr

Tambahkan komentar

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