String Manipülasyon Fonksiyonları
Coddy'nin R Journey'sinin Temeller bölümünün bir parçası — ders 66 / 78.
Artık dizeleri karakterlere nasıl ayıracağınızı bildiğinize göre, R'da dizelerle çalışmak için birkaç temel fonksiyonu inceleyelim. Bu fonksiyonlar metin verilerini ölçmenize, birleştirmenize ve dönüştürmenize yardımcı olur.
nchar() fonksiyonu, bir dizedeki karakter sayısını döndürür:
word <- "hello"
print(nchar(word))Çıktı:
[1] 5Birden fazla dizeyi birleştirmek için paste() kullanın. Varsayılan olarak, öğeleri bir boşlukla ayırır:
result <- paste("Hello", "World")
print(result)Çıktı:
[1] "Hello World"Dizeler arasında ayırıcı olmamasını istediğinizde paste0() kullanın:
result <- paste0("Hello", "World")
print(result)Çıktı:
[1] "HelloWorld"Büyük/küçük harf dönüşümü için R, toupper() ve tolower() fonksiyonlarını sunar:
print(toupper("hello"))
print(tolower("WORLD"))Çıktı:
[1] "HELLO"
[1] "world"Bu fonksiyonlar, öğrendiğiniz yineleme teknikleriyle birleştirildiğinde güçlü hale gelir ve metni karakter karakter veya bütün dizeler olarak işlemenize ve dönüştürmenize olanak tanır.
Görev
Kolayİki satırlık bir girdi alacaksınız:
- Bir ad (örneğin,
john) - Bir soyad (örneğin,
SMITH)
Aşağıdaki işlemleri gerçekleştirin:
toupper()kullanarak adı büyük harfe dönüştürüntolower()kullanarak soyadı küçük harfe dönüştürünpaste()kullanarak bunları (aralarında bir boşluk olacak şekilde) tam bir isim olarak birleştirinnchar()kullanarak tam isimdeki (boşluk dahil) toplam karakter sayısını hesaplayınpaste0()kullanarak, ad ve soyadı ayırıcı olmadan birleştirip tamamı küçük harf olacak şekilde bir kullanıcı adı oluşturun- Tam ismi yazdırın
- Karakter sayısını yazdırın
- Kullanıcı adını yazdırın
Örneğin, girdiler şunlar ise:
alice
WONDERÇıktı şöyle olmalıdır:
[1] "ALICE wonder"
[1] 12
[1] "alicewonder"Açıklama: "alice" adı "ALICE" (büyük harf) olur, "WONDER" soyadı "wonder" (küçük harf) olur. "ALICE wonder" tam ismi (boşluk dahil) 12 karaktere sahiptir. Kullanıcı adı, her iki ismi ayırıcı olmadan küçük harfle birleştirir: "alicewonder".
Kopya kağıdı
nchar() fonksiyonu, bir dizedeki karakter sayısını döndürür:
word <- "hello"
print(nchar(word)) # Çıktı: [1] 5paste() fonksiyonu, varsayılan olarak birden fazla dizeyi bir boşluk ayırıcı ile birleştirir:
result <- paste("Hello", "World")
print(result) # Çıktı: [1] "Hello World"paste0() fonksiyonu, dizeleri ayırıcı olmadan birleştirir:
result <- paste0("Hello", "World")
print(result) # Çıktı: [1] "HelloWorld"toupper() fonksiyonu dizeleri büyük harfe dönüştürür, tolower() ise küçük harfe dönüştürür:
print(toupper("hello")) # Çıktı: [1] "HELLO"
print(tolower("WORLD")) # Çıktı: [1] "world"Kendin dene
# Girdiyi oku
con <- file("stdin", "r")
first_name <- suppressWarnings(readLines(con, n = 1))
last_name <- suppressWarnings(readLines(con, n = 1))
close(con)
# TODO: Kodunuzu aşağıya yazın
# 1. toupper() kullanarak first_name değişkenini büyük harfe dönüştürün
# 2. tolower() kullanarak last_name değişkenini küçük harfe dönüştürün
# 3. paste() kullanarak bunları full_name içinde birleştirin
# 4. nchar() kullanarak karakter sayısını hesaplayın
# 5. paste0() kullanarak kullanıcı adı oluşturun (tamamı küçük harf)
# Sonuçları yazdır
print(full_name)
print(char_count)
print(username)Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 2
Mantıksal Operatörler (AND, OR)Mantıksal Operatörler Bölüm 2 (NOT)Özet - Basit MantıkVektörize Mantık Bölüm 1Vektörize Mantık Bölüm 27Hesap Paylaşım Hesaplayıcısı
Hoş Geldiniz MesajıKullanıcıdan Girdi Alma10Farklı Bir FizzBuzz
Oyuna Genel BakışFizzBuzz Fonksiyonu2Değişkenler ve Veri Tipleri
Sayısal Veri TipiTam Sayı Veri TipiKarakter Veri TipiMantıksal Veri TipiVeri Tiplerini Kontrol Etmeİsimlendirme KurallarıEksik Değerler: NAÖzet - Değişken Oluşturma8Döngüler
For DöngüsüWhile DöngüsüBreakNext (Continue)Özet - FaktöriyelDizi Oluşturma (seq, :)İç İçe DöngülerÖzet - Dinamik Girdi3Operatörler 1. Bölüm
Aritmetik OperatörlerTam Sayı Bölmesi ve Mod AlmaAtama OperatörleriÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel Giriş-Çıkış
Print ÇıktısıÇıktı için Cat KullanımıDeğişkenlerle Çıktı Almakreadline() ile Girdi OkumaTip Dönüşümü TemelleriÖzet - Yaş HesaplayıcıÖzet - Doğru mu Yanlış mı9Fonksiyonlar
Fonksiyon TanımlamaFonksiyon ArgümanlarıDönüş DeğerleriÖzet - Sigma FonksiyonuÖzet - Doğrulama FonksiyonuVarsayılan Parametre Değerleri12Diziler Üzerinde Yineleme
Vektör Elemanları Üzerinde Yinelemeseq_along() KullanımıKarakterler Üzerinde Yineleme (strsplit)String Manipülasyon Fonksiyonları