Vektör İşlemleri
Coddy'nin R Journey'sinin Temeller bölümünün bir parçası. Ders 59 / 78.
R'nin en güçlü özelliklerinden biri, her öğe üzerinde döngü oluşturmanız gerekmeksizin tüm vektörler üzerinde aynı anda işlemler gerçekleştirebilmesidir. Bu, kodunuzu hem daha temiz hem de daha verimli kılar.
Bir vektöre aritmetik bir işleç uyguladığınızda R, işlemi her öğe üzerinde gerçekleştirir:
prices <- c(10, 25, 15, 30)
discounted <- prices * 0.9
print(discounted)Çıktı:
[1] 9.0 22.5 13.5 27.0Aynı uzunluktaki iki vektör arasında da işlemler gerçekleştirebilirsiniz. R, karşılık gelen öğeleri eşleştirir:
quantities <- c(2, 1, 4, 3)
prices <- c(10, 25, 15, 30)
totals <- quantities * prices
print(totals)Çıktı:
[1] 20 25 60 90R, sum(), mean(), min() ve max() gibi yaygın vektör hesaplamaları için kullanışlı yerleşik işlevler sağlar:
scores <- c(85, 92, 78, 95, 88)
print(sum(scores))
print(mean(scores))
print(min(scores))
print(max(scores))Çıktı:
[1] 438
[1] 87.6
[1] 78
[1] 95Görev
KolayAşağıdaki vektörler verilmiştir:
hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)Aşağıdaki işlemleri gerçekleştirin ve her sonucu yazdırın:
hours_workedilehourly_ratedeğerlerini (eleman bazında) çarparak her gün için kazancı hesaplayın. Bu vektörü yazdırın.- Tüm günlük kazançlara %10 bonus uygulayın (
1.1ile çarpın). Güncellenmiş kazanç vektörünü yazdırın. sum()kullanarak haftalık toplam kazancı yazdırın.mean()kullanarak günlük ortalama kazancı yazdırın.- Tek bir gündeki en yüksek kazancı
max()kullanarak yazdırın. - Tek bir gündeki en düşük kazancı
min()kullanarak yazdırın.
Çıktınız şu şekilde olmalıdır:
[1] 120 140 162 132 136
[1] 132.0 154.0 178.2 145.2 149.6
[1] 759
[1] 151.8
[1] 178.2
[1] 132Kendin dene
# Verilen vektörler
hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)
# TODO: Kodunuzu aşağıya yazın
# 1. Günlük kazançları hesapla (eleman bazında çarpma)
# 2. Günlük kazançlara %10 bonus uygula
# 3. sum() kullanarak haftanın toplam kazancını yazdır
# 4. mean() kullanarak ortalama günlük kazancı yazdır
# 5. max() kullanarak en yüksek tek günlük kazancı yazdır
# 6. min() kullanarak en düşük tek günlük kazancı yazdırBu 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ğerleriKendi başına pratik yap: Online R derleyicisi