Sayısal bir değişkeni faktöre bölükleme (bucketing)
Eski dostun Dan, AAA_rank adlı, her biri 1-100 arasında ekstra bir sayıyla (100 en kârlı olacak şekilde) ne kadar kârlı olacağını düşündüğünü belirttiği, AAA notlu 50 tahvilin bir listesini gönderdi. Onun önerileri üzerinde daha fazla analiz yapmak istiyorsun ama önce tahvillerin bir şekilde derecelendirmeye göre bölüklenmesi (bucket) iyi olurdu. Bu, en az kârlıdan en çok kârlıya gruplar oluşturup daha kolay analiz yapmana yardımcı olur.
Bu, sayısal bir vektörden faktör oluşturmanın harika bir örneğidir. Bunu yapmanın en kolay yolu cut() kullanmaktır. Aşağıda, Dan'in 1-100 derecelendirmesi eşit aralıklı 5 gruba bölünmüştür. Faktör düzeylerindeki ( işaretinin, yanındaki sayıyı o gruba DAHİL ETMEDİĞİMİZİ, ] işaretinin ise o sayıyı gruba DAHİL ETTİĞİMİZİ ifade ettiğine dikkat et.
head(AAA_rank)
[1] 31 48 100 53 85 73
AAA_factor <- cut(x = AAA_rank, breaks = c(0, 20, 40, 60, 80, 100))
head(AAA_factor)
[1] (20,40] (40,60] (80,100] (40,60] (80,100] (60,80]
Levels: (0,20] (20,40] (40,60] (60,80] (80,100]
cut() fonksiyonunda breaks = kullanmak, R'ın verilerini hangi gruplara bölüklemesini istediğini belirtmene olanak tanır!
Bu egzersiz
Finans için R'ye Giriş
kursunun bir parçasıdırEgzersiz talimatları
- 5 yerine sadece 4 bölük (bucket) oluşturabilir misin?
breaks =içinde, her elemanı 25 sayı aralıklı olacak şekilde 0'dan 100'e bir vektör kullan. SonucuAAA_factor'a ata. - Bu 4 bölüğün adları çok açıklayıcı değil. Düzeyleri
levels()ile, sırasıyla"low","medium","high"ve"very_high"olarak yeniden adlandır. - Yeni adlandırılmış
AAA_factor'ı yazdır. - Yaptığını görselleştirmek için
AAA_factor'ı grafiğe dök!
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Create 4 buckets for AAA_rank using cut()
AAA_factor <- cut(x = ___, breaks = ___)
# Rename the levels
# Print AAA_factor
# Plot AAA_factor
plot(___)