lapply() для списку
Перша функція з родини apply, яку ви вивчитe, — це 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 = ___)