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 = ___)