加權平均(2)
等等,Lore 教過我們一個更好的做法!記得嗎,R 會對向量做運算!你能善用這個特性,更有效率地計算投資組合報酬嗎?仔細想想下面的程式碼:
ret <- c(5, 7)
weight <- c(.4, .6)
ret_X_weight <- ret * weight
sum(ret_X_weight)
[1] 6.2
先計算 ret * weight,也就是把兩個向量的每個元素相乘,產生新的向量 ret_X_weight。接著只要把各部分加總即可,因此使用 sum() 將向量中的每個元素加起來。
現在換你試試!
本練習屬於課程
R for Finance 入門
練習說明
- 已替你再次定義 Microsoft 和 Sony 的
ret與weight,這次是向量形式! - 幫
ret和weight向量加上公司名稱。 - 使用向量化運算將
ret與weight相乘。 - 列印
ret_X_weight查看結果。 - 使用
sum()取得總和portf_ret。 - 列印
portf_ret,並與上一個練習比較!
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Weights, returns, and company names
ret <- c(7, 9)
weight <- c(.2, .8)
companies <- c("Microsoft", "Sony")
# Assign company names to your vectors
names(ret) <-
names(weight) <-
# Multiply the returns and weights together
ret_X_weight <-
# Print ret_X_weight
# Sum to get the total portfolio return
portf_ret <-
# Print portf_ret