R you functional? (2)
Une implémentation possible de la fonction interpret() vous est fournie. Dans cet exercice, vous allez écrire une autre fonction qui utilisera interpret() pour interpréter toutes les données de vos consultations quotidiennes de profil contenues dans un vecteur. De plus, votre fonction retournera la somme des vues lors des journées populaires, si on le demande. Une boucle for est idéale pour parcourir tous les éléments du vecteur. La capacité de retourner la somme des vues lors des journées populaires peut être codée au moyen d'un argument de fonction avec une valeur par défaut.
Cette activité fait partie du cours
R intermédiaire
Instructions de l’exercice
Complétez le modèle de la fonction interpret_all() :
- Faites de
return_sumun argument optionnel, dont la valeur par défaut estTRUE. - À l'intérieur de la boucle
for, itérez sur tous les éléments deviews: à chaque itération, ajoutez le résultat deinterpret(v)àcount. Rappelez-vous queinterpret(v)retournevpour les journées populaires, et0sinon. En même temps,interpret(v)fera aussi quelques affichages. - Terminez la structure
if: - Si
return_sumestTRUE, retournezcount. - Sinon, retournez
NULL.
Appelez cette nouvelle fonction sur linkedin et facebook.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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