Kom igångKom igång gratis

Är du funktionell? (2)

En möjlig implementation av funktionen interpret() finns redan. I den här övningen skriver du en ny funktion som använder interpret() för att tolka alla dagliga profilvisningar i en vektor. Funktionen returnerar dessutom summan av visningar på populära dagar, om det efterfrågas. En for-loop passar bra för att iterera över alla element i vektorn. Möjligheten att returnera summan av visningar på populära dagar kan du lösa med ett funktionsargument som har ett standardvärde.

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

R för medelnivå

Visa kurs

Övningsinstruktioner

Färdigställ mallen för funktionen interpret_all():

  • Gör return_sum till ett valfritt argument med standardvärdet TRUE.
  • Inuti for-loopen itererar du över alla views: lägg vid varje iteration till resultatet av interpret(v) till count. Kom ihåg att interpret(v) returnerar v för populära dagar och 0 annars. Samtidigt skriver interpret(v) ut viss information.
  • Färdigställ if-konstruktionen:
  • Om return_sum är TRUE, returnera count.
  • Annars, returnera NULL.

Anropa den nydefinierade funktionen med både linkedin och facebook.

Interaktiv övning med praktiskt arbete

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

# The linkedin and facebook vectors have already been created for you
linkedin <- c(16, 9, 13, 5, 2, 17, 14)
facebook <- c(17, 7, 5, 16, 8, 13, 14)

# The interpret() can be used inside interpret_all()
interpret <- function(num_views) {
  if (num_views > 15) {
    print("You're popular!")
    return(num_views)
  } else {
    print("Try to be more visible!")
    return(0)
  }
}

# Define the interpret_all() function
# views: vector with data to interpret
# return_sum: return total number of views on popular days?
interpret_all <- function(views, return_sum) {
  count <- 0

  for (v in views) {

  }

  if (return_sum) {

  } else {

  }
}

# Call the interpret_all() function on both linkedin and facebook
Redigera och kör kod