Kom igångKom igång gratis

lapply() på en lista

Den första funktionen i apply-familjen som du får lära dig är lapply(), vilket är en förkortning för "list apply." När du har en lista och vill tillämpa samma funktion på varje element i listan är lapply() en möjlig lösning – den returnerar alltid en ny lista. Hur fungerar det i praktiken?

Låt oss titta på ett enkelt exempel. Anta att du vill ta reda på längden på varje vektor i följande lista.

my_list
$a
[1] 2 4 5

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

# Using lapply
# Note that you don't need parenthesis when calling length
lapply(my_list, FUN = length)
$a
[1] 3

$b
[1] 7

Som nämndes i videon: om du först tänkte på att loopa över varje element i listan och använda length() vid varje iteration har du rätt i tanken. lapply() är den vektoriserade varianten av den typen av loop och är ofta att föredra – och enklare – i R-världen.

En lista med dagliga aktiekursutvecklingar i procent kallad stock_return och funktionen percent_to_decimal() har förberetts åt dig.

Den här övningen är en del av kursen

R för finans – fortsättningskurs

Visa kurs

Övningsinstruktioner

  • Skriv ut stock_return.
  • Fyll i lapply()-funktionen så att percent_to_decimal() tillämpas på varje element i stock_return.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Print stock_return
___

# lapply to change percents to decimal
lapply(___, FUN = ___)
Redigera och kör kod