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, kursun bir parçasıdır
Finans için R'ye Giriş
Egzersiz 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ı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Create 4 buckets for AAA_rank using cut()
AAA_factor <- cut(x = ___, breaks = ___)
# Rename the levels
# Print AAA_factor
# Plot AAA_factor
plot(___)