Začněte nyníZačněte zdarma

lapply() na seznamu

První funkcí z rodiny apply, kterou se naučíš, je lapply() – zkratka pro „list apply". Když máš seznam a chceš na každý jeho prvek aplikovat stejnou funkci, lapply() je jedním z řešení – a vždy vrátí další seznam. Jak to funguje v praxi?

Podívejme se na jednoduchý příklad. Řekněme, že chceš zjistit délku každého vektoru v následujícím seznamu.

my_list
$a
[1] 2 4 5

$b
[1] 10 14  5  3  4  5  6

# Použití lapply
# Všimni si, že při volání length závorky nepotřebuješ
lapply(my_list, FUN = length)
$a
[1] 3

$b
[1] 7

Jak bylo zmíněno ve videu – pokud tě jako první napadlo procházet každý prvek seznamu smyčkou a na každé iteraci volat length(), jsi na správné stopě. lapply() je vektorizovaná verze přesně takové smyčky a v prostředí R se zpravidla dává přednost právě jí (a je i přehlednější).

K dispozici máš seznam denních výnosů akcií v procentech s názvem stock_return a funkci percent_to_decimal().

Toto cvičení je součástí kurzu

Intermediate R for Finance

Zobrazit kurz

Pokyny k cvičení

  • Vypiš stock_return.
  • Doplň funkci lapply() tak, aby aplikovala percent_to_decimal() na každý prvek seznamu stock_return.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Print stock_return
___

# lapply to change percents to decimal
lapply(___, FUN = ___)
Upravit a spustit kód