C: karakterin bir dizede olup olmadığı nasıl kontrol edilir?


Bir karakterin R’de bir dizede olup olmadığını kontrol etmek için aşağıdaki yöntemleri kullanabilirsiniz:

Yöntem 1: Base R’yi kullanarak karakterin bir dizede olup olmadığını kontrol edin

 grepl(my_character, my_string, fixed= TRUE )

Yöntem 2: Stringr paketini kullanarak karakterin dizede olup olmadığını kontrol edin

 library (stringr) 

str_detect(my_string, my_character)

Aşağıdaki örnekler her yöntemin pratikte nasıl kullanılacağını göstermektedir.

Örnek 1: Base R’yi kullanarak karakterin bir dizede olup olmadığını kontrol edin

Aşağıdaki kod, R’deki belirli bir dizede “Doug”ın bulunup bulunmadığının nasıl kontrol edileceğini gösterir:

 #define character to look for
my_character <- "Doug"

#define string
my_string <- "Hey my name is Douglas"

#check if "Doug" is in string
grepl(my_character, my_string, fixed= TRUE )

[1] TRUE

Dizede “Doug” mevcut olduğundan, grepl() işlevi TRU E değerini döndürür.

Bunun yerine dizede “Steve”in var olup olmadığını kontrol ettiğimizi varsayalım:

 #define character to look for
my_character <- "Steve"

#define string
my_string <- "Hey my name is Douglas"

#check if "Steve" is in string
grepl(my_character, my_string, fixed= TRUE )

[1] FALSE

Dizede “Steve” bulunmadığından, grepl() işlevi FALSE değerini döndürür.

Örnek 2: stringr paketini kullanarak karakterin bir dizede olup olmadığını kontrol edin

Aşağıdaki kod, “Doug” dizesinin belirli bir dizede mevcut olup olmadığını kontrol etmek için stringr paketinin str_detect() işlevinin nasıl kullanılacağını gösterir:

 library (stringr)

#define character to look for
my_character <- "Doug"

#define string
my_string <- "Hey my name is Douglas"

#check if "Doug" is in string
str_detect(my_string, my_character)

[1] TRUE

Dizede “Doug” olduğundan str_detect() işlevi TRUE değerini döndürür.

Dizede birden fazla karakterin olup olmadığını kontrol etmek için aşağıdaki sözdizimini de kullanabileceğimizi unutmayın:

 library (stringr)

#define vector of characters to look for
my_characters <- c("Doug", "Steve", "name", "He")

#define string 
my_string <- "Hey my name is Douglas"

#check if each character is in string
str_detect(my_string, my_characters)

[1] TRUE FALSE TRUE TRUE

Sonuçtan şunu görebiliriz:

  • Zincirde “Doug” var.
  • Kanalda “Steve” mevcut değil.
  • Dizede “isim” mevcut.
  • Dizede “O” var.

İlgili: R’de str_detect() Fonksiyonu Nasıl Kullanılır (3 Örnek)

Ek kaynaklar

Aşağıdaki eğitimlerde R’de diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

R’deki dizeden son karakter nasıl kaldırılır
R’de bir dizedeki karakter konumu nasıl bulunur?
R’de belirli bir dize içeren sütunlar nasıl seçilir

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir