Dplyr kullanarak dizelerden ilk karakter nasıl kaldırılır
Belirli bir sütundaki her dizeden ilk karakteri kaldırmak için dplyr’de aşağıdaki temel sözdizimini kullanabilirsiniz:
library (dplyr) df_new <- df %>% mutate(across(c(' my_column '), substr, 2 , nchar(my_column)))
Bu özel sözdizimi, her dizenin ilk karakterini sütunum adlı sütundan kaldırır.
Her dizenin ikinci karakterinden dize uzunluğuna kadar alt dizeyi çıkarmak için substr() işlevini kullandığımızı unutmayın.
Bunun dizedeki ilk karakteri kaldırma etkisi vardır.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: Dplyr kullanarak dizelerden ilk karakteri kaldırın
R’de aşağıdaki veri çerçevesine sahip olduğumuzu varsayalım:
#create data frame df <- data. frame (team=c('XMavs', 'XPacers', 'XHawks', 'XKings', 'XNets', 'XCeltics'), points=c(104, 110, 134, 125, 114, 124)) #view data frame df team points 1 XMavs 104 2 XPacers 110 3XHawks 134 4 XKings 125 5 XNets 114 6 XCeltics 124
Diyelim ki takım sütunundaki her dizenin ilk karakterini kaldırmak istiyoruz.
Bunu yapmak için aşağıdaki sözdizimini kullanabiliriz:
library (dplyr) #remove first character from each string in 'team' column df_new <- df %>% mutate(across(c(' team '), substr, 2 , nchar(team))) #view updated data frame df_new team points 1 Mavs 104 2 Pacers 110 3 Hawks 134 4 Kings 125 5 Nets 114 6 Celtics 124
Takım sütunundaki her dizenin ilk karakterinin kaldırıldığını unutmayın.
Bir dizedeki toplam karakter sayısını hesaplamak için nchar() işlevinin kullanıldığını unutmayın.
Bu nedenle, alt dizeyi ikinci karakterden her dizenin son karakterine çıkarmak için substr() işlevini kullanırız; bu, her dizenin ilk karakterini kaldırmaya eşdeğerdir.
Not : Birden çok sütun dizesinden ilk karakteri kaldırmak istiyorsanız, cross() işlevine birden çok sütun adı eklemeniz yeterlidir.
Ek kaynaklar
Aşağıdaki eğitimlerde dplyr’de diğer genel görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
Dplyr kullanarak satırlar nasıl silinir
Dplyr kullanarak dizine göre sütunlar nasıl seçilir
Belirli bir dizeyi içeren satırları dplyr kullanarak nasıl filtreleyebilirim?