sapply() vs. lapply()
lapply() 很好用,但有时您可能希望返回结果的形式比列表更便于后续处理。比如计算夏普比率时,如果能直接返回一个向量而不是列表,不是更方便做进一步分析吗?
为此,您可以考虑使用 sapply()(simplify apply)。它与 lapply() 的功能相同,但会在可能的情况下尝试简化输出。其基本语法相同,只是多了几个参数:
sapply(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)
这些额外的可选参数让您可以指定是否要让 sapply() 尝试简化输出,以及是否要在输出中使用对象的名称。
在本练习中,您将使用 sapply() 重新计算夏普比率,并简化输出。stock_return 和 sharpe 函数已为您准备好。
本练习是课程的一部分
R 金融中级
练习说明
- 首先,在
stock_return上使用lapply()再次计算夏普比率。 - 接着,在
stock_return上使用sapply(),查看简化后的夏普比率输出。 - 在
stock_return上使用sapply()并传入参数simplify = FALSE和USE.NAMES = FALSE来获取夏普比率。这等价于lapply()!
交互式实操练习
通过完成这段示例代码来试试这个练习。
# lapply() on stock_return
___
# sapply() on stock_return
___
# sapply() on stock_return with optional arguments
___