リストに対する lapply()
apply ファミリーで最初に学ぶ関数は lapply() です。これは「list apply」の略で、リストがあり、その各要素に同じ関数を適用したいときに使います。lapply() は常に別のリストを返すのが特徴です。どのように動くのでしょうか?
簡単な例を見てみましょう。次のリストの各ベクトルの長さを求めたいとします。
my_list
$a
[1] 2 4 5
$b
[1] 10 14 5 3 4 5 6
# lapply の使用例
# length を呼ぶときは、かっこは不要です
lapply(my_list, FUN = length)
$a
[1] 3
$b
[1] 7
動画でも触れたように、最初にリストの各要素をループして、各反復で length() を使うことを思いついたとしても、それは間違いではありません。lapply() はこの種のループをベクトル化したもので、R ではしばしばこちらの方が好まれ(しかも簡潔)です。
日次の株式リターンを「パーセント表記」で持つリスト stock_return と、percent_to_decimal() 関数が用意されています。
この演習はコースの一部です
金融のための中級R
演習の手順
stock_returnを表示します。lapply()を使って、percent_to_decimal()をstock_returnの各要素に適用するコードを完成させてください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Print stock_return
___
# lapply to change percents to decimal
lapply(___, FUN = ___)