table() ile Sayma
Coddy'nin R Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 15 / 64.
table(x) her bir değerin kaç kez geçtiğini sayar. Sonuç, değerlere göre adlandırılır ve alfabetik olarak sıralanır; bu nedenle bir değerin sayısı t[["value"]] şeklindedir:
votes <- c("tea", "coffee", "tea", "juice", "tea")
t <- table(votes)
print(t[["tea"]])
print(names(t))
print(as.vector(t))Çıktı:
[1] 3
[1] "coffee" "juice" "tea"
[1] 1 1 3sort(t, decreasing = TRUE) sayımları en yüksekten en düşüğe sıralar. which.max(t) en büyük sayımın konumunu verir; sayımlar eşit olduğunda ilkini, yani alfabetik olarak ilk değeri seçer:
votes <- c("tea", "coffee", "tea", "juice", "coffee")
t <- table(votes)
print(names(t)[which.max(t)])
print(max(t))Çıktı:
[1] "coffee"
[1] 2Hiç oluşmayan bir değer tabloda hiç yer almaz; bu nedenle değeri okumadan önce %in% names(t) ile kontrol edin:
t <- table(c("A", "B", "A"))
for (grade in c("A", "B", "C")) {
n <- if (grade %in% names(t)) t[[grade]] else 0
cat(grade, n, "\n")
}Çıktı:
A 2
B 1
C 0 table() sayıları ve mantıksal değerleri de sayar. Tek bir değeri saymak için sum(x == value), bir tablo oluşturmaktan daha kısadır:
rolls <- c(6, 2, 6, 6, 1)
print(sum(rolls == 6))
print(table(rolls > 3)[["TRUE"]])Çıktı:
[1] 3
[1] 3Görev
Kolayvote_winner(votes) işlevini tamamla. En çok oyu alan seçeneği, ardından oy sayısını tea (3 votes) örneğindeki gibi döndür. Seçenekler berabere kalırsa alfabetik olarak önce geleni döndür.
Sağlanan kod, oyları virgülle ayrılmış bir satır olarak okur ve döndürülen değeri yazdırır.
Kendin dene
vote_winner <- function(votes) {
# Kodunuzu buraya yazın
""
}
# Sağlanan girdi/çıktı kodu: olduğu gibi bırakın
input <- suppressWarnings(readLines(file("stdin")))
cat(vote_winner(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