Aan de slagBegin gratis

sapply kan niet vereenvoudigen, en nu?

Het lijkt erop dat we de jackpot hebben met sapply(). In alle voorbeelden tot nu toe kon sapply() de nogal omvangrijke output van lapply() netjes vereenvoudigen. Maar net als in het leven zijn er dingen die je niet kunt vereenvoudigen. Hoe reageert sapply()?

We hebben al een functie gemaakt, below_zero(), die een vector met numerieke waarden neemt en een vector teruggeeft die alleen de waarden bevat die strikt onder nul liggen.

Deze oefening maakt deel uit van de cursus

R voor gevorderden

Bekijk cursus

Oefeninstructies

  • Pas below_zero() toe op temp met sapply() en sla het resultaat op in freezing_s.
  • Pas below_zero() toe op temp met lapply(). Sla de resulterende lijst op in een variabele freezing_l.
  • Vergelijk freezing_s met freezing_l met de functie identical().

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# temp is already prepared for you in the workspace

# Definition of below_zero()
below_zero <- function(x) {
  return(x[x < 0])
}

# Apply below_zero over temp using sapply(): freezing_s


# Apply below_zero over temp using lapply(): freezing_l


# Are freezing_s and freezing_l identical?
Code bewerken en uitvoeren