İsimlendirilmiş Vektörler
Coddy'nin R Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 62 / 78.
Şimdiye kadar vektör öğelerine sayısal konumları kullanarak eriştiniz. Peki ya bunlara anlamlı adlar kullanarak erişebilseydiniz? Adlandırılmış vektörler, her öğeye etiket atamanıza olanak tanıyarak kodunuzu daha okunabilir ve kendi kendini açıklayan hâle getirir.
Oluşturma sırasında adlar 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 ada göre erişmek için adı köşeli parantezlerin içinde bir dize olarak kullanın:
print(ages["bob"])Çıktı:
bob
30Ayrıca names() işlevini kullanarak mevcut bir vektöre adlar ekleyebilirsiniz:
scores <- c(85, 92, 78)
names(scores) <- c("math", "science", "english")
print(scores["math"])Çıktı:
math
85Adlandırılmış vektörler, öğrenci notlarını derse göre veya fiyatları ürün adına göre depolamak gibi doğal etiketlere sahip verilerle çalışırken özellikle kullanışlıdır.
Görev
Kolayİki satırlık girdi alacaksınız:
- Virgülle ayrılmış ürün adları listesi (ör.
laptop,phone,tablet,headphones) - Karşılık gelen fiyatların virgülle ayrılmış listesi (ör.
999,699,449,199)
Aşağıdaki işlemleri gerçekleştirin:
- Fiyatlardan bir sayısal vektör oluşturun
names()işlevini kullanarak ürün adlarını vektöre atayın- Adlandırılmış vektörün tamamını yazdırın
- Adını kullanarak erişip ikinci ürünün fiyatını yazdırın
- Adını kullanarak erişip son ürünün fiyatını yazdırın
Örneğin, girdiler şöyleyse:
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 öğelere sayısal konumla değil, alt simge olarak bir adla (örneğin bir dize olan prices["banana"]) erişin. Adlar ilk girdi satırından gelir; bu nedenle önce doğru adı orada bulun.
Kendin 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]]
# TODO: Kodunuzu aşağıya yazın
# 1. Fiyatlardan sayısal bir vektör oluştur
# 2. Ürün adlarını names() kullanarak vektöre ata
# 3. Adlandırılmış vektörün tamamını yazdır
# 4. İkinci ürünün fiyatını adına erişerek yazdır
# 5. Son ürünün fiyatını adına erişerek yazdırBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temel Bilgiler 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ğerleriKendi başına pratik yap: Online R derleyicisi