Bir veri çerçevesi üzerinde lapply()
Bir liste yerine bir hisse senedi getirileri veri çerçeven olsa, yine de lapply() kullanabilir miydin? Evet! Belki şaşırtıcı gelebilir ama veri çerçeveleri aslında perde arkasında listelerdir ve bir lapply() çağrısı, fonksiyonu veri çerçevesinin her bir sütununa uygular.
df
a b
1 1 4
2 2 6
class(df)
[1] "data.frame"
lapply(df, FUN = sum)
$a
[1] 3
$b
[1] 10
lapply() veri çerçevesindeki her sütunu topladı ama her zaman bir liste döndürme kuralına uymaya devam etti. Ondalık cinsinden günlük hisse senedi getirilerinden oluşan stock_return adlı bir veri çerçevesi sağlandı.
Bu egzersiz, kursun bir parçasıdır
Finans için Orta Düzey R
Egzersiz talimatları
- Veri çerçevesini görmek için
stock_return'u yazdır. - Her sütunun ortalamasını (
mean) almak içinlapply()kullan. - Sharpe oranı için bir fonksiyon oluştur. Getirilerin ortalamasını almalı, bundan risksiz faiz oranını (
.03%) çıkarmalı ve sonra getirilerin standart sapmasına bölmeli. - Her sütunun sharpe oranını hesaplamak için
lapply()kullan.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Print stock_return
___
# lapply to get the average returns
___
# Sharpe ratio
sharpe <- function(returns) {
(___ - .0003) / ___
}
# lapply to get the sharpe ratio
___