sapply() ve lapply() karşılaştırması
lapply() harika, ama bazen dönen veriyi listeden daha düzgün bir biçimde almak isteyebilirsin. Örneğin Sharpe oranında, dönen Sharpe oranlarının liste yerine bir vektörde olması güzel olmaz mıydı? Sonraki analizler muhtemelen daha kolay olurdu!
Bunun için sapply() (simplify apply) düşünebilirsin. lapply() ile aynı şekilde çalışır, ancak mümkünse çıktıyı basitleştirmeye çalışır. Temel sözdizimi aynıdır, birkaç ek argümanla birlikte:
sapply(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)
Bu ek isteğe bağlı argümanlar, çıktının basitleştirilmesini isteyip istemediğini ve çıktıdaki öğe adlarında nesnenin adlarını kullanmak isteyip istemediğini belirtmene olanak tanır.
Bu egzersizde, çıktıyı basitleştirmek için sapply() kullanarak Sharpe oranlarını yeniden hesaplayacaksın. stock_return ve sharpe fonksiyonu senin için hazır.
Bu egzersiz, kursun bir parçasıdır
Finans için Orta Düzey R
Egzersiz talimatları
- Önce,
stock_returnüzerindelapply()kullanarak Sharpe oranını tekrar elde et. - Şimdi,
stock_returnüzerindesapply()kullanarak basitleştirilmiş Sharpe oranı çıktısını gör. stock_returnüzerindesapply()kullanaraksimplify = FALSEveUSE.NAMES = FALSEargümanlarıyla Sharpe oranını al. Bu,lapply()ile eşdeğerdir!
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# lapply() on stock_return
___
# sapply() on stock_return
___
# sapply() on stock_return with optional arguments
___