Vektörize Mantık Bölüm 2
Coddy'nin R Journey'sinin Temeller bölümünün bir parçası. Ders 21 / 78.
AND ve OR'un vektörleştirilmiş sürümleri olduğu gibi, NOT operatörü de vektörler üzerinde eleman bazında çalışır. ! işlecini mantıksal değerlerden oluşan bir vektöre uyguladığında, her bir elemanı ayrı ayrı tersine çevirir.
passed <- c(TRUE, FALSE, TRUE, FALSE)
!passed # FALSE TRUE FALSE TRUEHer TRUE, FALSE olur ve her FALSE, TRUE olur. Bu, belirli bir koşulu karşılamayan öğeleri bulmak istediğinizde özellikle kullanışlıdır:
temperatures <- c(18, 25, 30, 15, 22)
# 20'nin üzerinde OLMAYAN sıcaklıkları bul
!(temperatures > 20) # TRUE FALSE FALSE TRUE FALSEKarmaşık filtreler oluşturmak için vektörleştirilmiş NOT işlemini & ve | ile birleştirebilirsin:
ages <- c(16, 25, 18, 30, 14)
has_permission <- c(TRUE, TRUE, FALSE, TRUE, TRUE)
# Katılabilir eğer: age >= 18 OR (18 yaşından küçük AND has permission)
can_participate <- ages >= 18 | (ages < 18 & has_permission)
# TRUE TRUE FALSE TRUE TRUEUnutma: vektörlerle çalışırken tek &, | ve ! kullan; tek değerleri karşılaştırırken çift &&, || kullan.
Görev
KolayKarmaşık öğe bazlı mantıksal koşullar oluşturmak için vektörleştirilmiş NOT operatörünü (!), & ve | ile birlikte kullanın.
Aşağıdaki vektörler size sağlanmıştır:
scores <- c(45, 72, 88, 55, 91, 38, 67)
attended <- c(TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE)
submitted_homework <- c(TRUE, FALSE, TRUE, TRUE, TRUE, FALSE, FALSE)Aşağıdaki mantıksal vektörleri oluşturmak için NOT operatörü de dahil olmak üzere vektörleştirilmiş mantıksal operatörleri kullanın:
- 60'tan büyük veya eşit OLMAYAN her skor için
TRUEdeğeri depolayanfailedadlı bir vektör oluşturun attendedvektörünün tersini (her değeri tersine çevirerek) depolayanabsentadlı bir vektör oluşturun- Derse katılMAYAN VEYA ödev teslim etMEYEN her öğrenci için
TRUEdeğeri depolayanat_riskadlı bir vektör oluşturun - Skoru 60'tan büyük veya eşit olan VE derse katılMAYAN her öğrenci için
TRUEdeğeri depolayanpassing_but_absentadlı bir vektör oluşturun - Şu koşulu sağlayan her öğrenci için
TRUEdeğeri depolayanneeds_supportadlı bir vektör oluşturun: (skor 50'den küçüktür) VEYA (derse katılMADI VE ödev teslim etMEDİ)
failed, absent, at_risk, passing_but_absent ve needs_support değerlerini tam olarak bu sırayla görüntülemek için print() işlevini kullanın.
Kendin dene
# Verilen vektörler
scores <- c(45, 72, 88, 55, 91, 38, 67)
attended <- c(TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE)
submitted_homework <- c(TRUE, FALSE, TRUE, TRUE, TRUE, FALSE, FALSE)
# TODO: Kodunuzu aşağıya yazın
# 1. 'failed' oluştur - scores NOT >= 60 için TRUE
# 2. 'absent' oluştur - attended'ın zıttı
# 3. 'at_risk' oluştur - NOT attended OR NOT submitted homework
# 4. 'passing_but_absent' oluştur - score >= 60 AND NOT attended
# 5. 'needs_support' oluştur - (score < 50) OR (NOT attended AND NOT submitted homework)
# Sonuçları yazdır
print(failed)
print(absent)
print(at_risk)
print(passing_but_absent)
print(needs_support)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ğerleriKendi başına pratik yap: Online R derleyicisi