Benzersiz Değerler
Coddy'nin R Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 12 / 64.
R'nin ayrı bir küme türü yoktur: küme, tekrarlanan değerler içermeyen bir vektördür. unique() tekrarları kaldırır ve her değerin ilk oluşumunu özgün sırada tutar.
tags <- c("r", "stats", "r", "data", "stats")
print(unique(tags))
print(length(unique(tags)))Çıktı:
[1] "r" "stats" "data"
[1] 3duplicated(), vektörde daha önce zaten yer almış her değer için TRUE döndürür. İlk oluşum FALSE değeridir:
ids <- c(7, 3, 7, 9, 3)
print(duplicated(ids))
print(ids[duplicated(ids)])Çıktı:
[1] FALSE FALSE TRUE FALSE TRUE
[1] 7 3Her iki işlev de tam değerleri karşılaştırır; bu nedenle "R" ve "r" farklıdır. Büyük/küçük harf önemli olmamalıysa önce metni normalleştirin:
langs <- c("R", "python", "r", "Python")
print(length(unique(langs)))
print(unique(tolower(langs)))Çıktı:
[1] 4
[1] "r" "python"unique() sayılar üzerinde de çalışır ve sort(unique(x)) farklı değerleri artan sırayla listeler. sum(duplicated(x)) kaç öğenin tekrarlandığını sayar:
rolls <- c(4, 2, 6, 2, 4, 4)
print(sort(unique(rolls)))
print(sum(duplicated(rolls)))Çıktı:
[1] 2 4 6
[1] 3Görev
Kolaycount_distinct(tags) işlevini tamamla. Büyük/küçük harfler göz ardı edildiğinde kaç farklı etiket olduğunu döndür: R ve r bir kez sayılır.
Verilen kod, etiketleri virgülle ayrılmış bir satır olarak okur ve döndürülen sayıyı yazdırır.
Kendin dene
count_distinct <- function(tags) {
# Kodunuzu buraya yazın
0
}
# Sağlanan girdi/çıktı kodu: olduğu gibi bırakın
input <- suppressWarnings(readLines(file("stdin")))
cat(count_distinct(strsplit(input[1], ",")[[1]]), sep = "\n")
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1Dizeleri Derinlemesine
substr() ile Alt Dizelersprintf() ile BiçimlendirmeBölme ve BirleştirmeDizelerde AramaMetin DeğiştirmeTekrar - Kullanıcı Adı Oluşturucu4Matrisler
Matris OluşturmaMatrisleri İndekslemeSatır ve Sütun ÖzetleriMatris AritmetiğiTekrar - Oturma Planı2Anahtar-Değer Aramaları
Adlandırılmış Vektör AramalarıAnahtarları DenetlemeAnahtar Ekleme ve KaldırmaAdlar Üzerinde DöngüTekrar - Hisse Senedi Masası5Proje - Not Defteri
Öğrenci EklemeNotları Kaydetme3Kümeler ve Sayma
Benzersiz DeğerlerKüme İşlemleriÜyelik Testleritable() ile SaymaTekrar - Etkinlik Konukları6Değer Olarak Fonksiyonlar
Anonim FonksiyonlarFonksiyonları GeçirmeFonksiyon DöndürmeDurum Bilgili Closure'larTekrar - İndirim Kuralları9Veri Çerçeveleri
Veri Çerçeveleri OluşturmaSütunlar ve SatırlarSatırları FiltrelemeEkleme ve SıralamaTekrar - Satış Raporu12Proje - Harcama Takipçisi
Harcamaları KaydetmeToplam HarcamaKendi başına pratik yap: Online R derleyicisi