İsimlendirilmiş Vektörler
Coddy'nin R Journey'sinin Temeller bölümünün bir parçası — ders 62 / 78.
Şimdiye kadar, vektör öğelerine sayısal konumları kullanarak eriştiniz. Peki ya bunun yerine onlara anlamlı isimlerle erişebilseydiniz? Adlandırılmış vektörler, her bir öğeye etiketler atamanıza olanak tanıyarak kodunuzu daha okunabilir ve kendi kendini belgeleyen bir hale getirir.
Oluşturma sırasında isimler sağlayarak adlandırılmış bir vektör oluşturabilirsiniz:
ages <- c(alice = 25, bob = 30, charlie = 28)
print(ages)Çıktı:
alice bob charlie
25 30 28Öğelere isme göre erişmek için, ismi köşeli parantez içinde bir dize olarak kullanın:
print(ages["bob"])Çıktı:
bob
30Ayrıca names() fonksiyonunu kullanarak mevcut bir vektöre isimler ekleyebilirsiniz:
scores <- c(85, 92, 78)
names(scores) <- c("math", "science", "english")
print(scores["math"])Çıktı:
math
85İsimlendirilmiş vektörler, öğrenci notlarını derse göre veya fiyatları ürün adına göre saklamak gibi doğal etiketlere sahip verilerle çalışırken özellikle yararlıdır.
Görev
Kolayİki satırlık bir girdi alacaksınız:
- Virgülle ayrılmış ürün adları listesi (örneğin,
laptop,phone,tablet,headphones) - Virgülle ayrılmış karşılık gelen fiyatlar listesi (örneğin,
999,699,449,199)
Aşağıdaki işlemleri gerçekleştirin:
- Fiyatlardan sayısal bir vektör oluşturun
names()fonksiyonunu kullanarak ürün adlarını vektöre atayın- Adlandırılmış vektörün tamamını yazdırın
- İkinci ürünün fiyatını, adına göre erişerek yazdırın
- Son ürünün fiyatını, adına göre erişerek yazdırın
Örneğin, girdiler şunlar ise:
apple,banana,orange,grape
2,1,3,4Çıktı şöyle olmalıdır:
apple banana orange grape
2 1 3 4
banana
1
grape
4Not: İkinci ve son elemanlara sayısal dizinle değil, adlarıyla (dizgi olarak) erişin.
Kopya kağıdı
Adlandırılmış vektörler, her bir öğeye etiket atamanıza olanak tanıyarak öğelere yalnızca sayısal konumlar yerine anlamlı adlarla erişilmesini sağlar.
Oluşturma sırasında adlar sağlayarak adlandırılmış bir vektör oluşturun:
ages <- c(alice = 25, bob = 30, charlie = 28)Köşeli parantez içinde adı bir dize olarak kullanarak öğelere ada göre erişin:
ages["bob"] # "bob" adlı öğeyi döndürürnames() işlevini kullanarak mevcut bir vektöre adlar ekleyin:
scores <- c(85, 92, 78)
names(scores) <- c("math", "science", "english")
scores["math"] # 85 döndürürKendin dene
# Girdiyi oku
con <- file("stdin", "r")
products_input <- suppressWarnings(readLines(con, n = 1))
prices_input <- suppressWarnings(readLines(con, n = 1))
close(con)
# Virgülle ayrılmış girdileri ayrıştır
product_names <- strsplit(products_input, ",")[[1]]
price_values <- strsplit(prices_input, ",")[[1]]
# YAPILACAK: Kodunuzu aşağıya yazın
# 1. Fiyatlardan sayısal bir vektör oluşturun
# 2. names() fonksiyonunu kullanarak ürün adlarını vektöre atayın
# 3. Adlandırılmış vektörün tamamını yazdırın
# 4. İkinci ürünün fiyatını adını kullanarak erişip yazdırın
# 5. Son ürünün fiyatını adını kullanarak erişip yazdırınBu 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 Girdi11Vektörler
c() ile Vektör OluşturmaVektör Elemanlarına ErişmeVektörleri DeğiştirmeVektör İşlemleriÖzet - Fiyat VektörüÖzet - Ters Çevrilmiş Vektörİsimlendirilmiş Vektörler3Operatö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ğerleri