Utiliser vapply (2)
Jusqu'à présent, vous avez vu que vapply()
imite le comportement de sapply()
si tout se passe comme prévu. Et si ce n'est pas le cas ?
Dans la vidéo, Filip vous a montré qu'il existe des cas où la structure de la sortie de la fonction que vous souhaitez appliquer, FUN
, ne correspond pas au modèle que vous avez spécifié dans FUN.VALUE
. Dans ce cas, vapply()
produira une erreur qui vous informera du décalage entre le résultat attendu et le résultat réel.
Cet exercice fait partie du cours
Intermédiaire R
Instructions
- Inspectez le code préchargé et essayez de l'exécuter. Si vous n'avez rien changé, une erreur devrait apparaître. C'est parce que
vapply()
s'attend toujours à ce quebasics()
renvoie un vecteur de longueur 3. Le message d'erreur vous indique ce qui ne va pas. - Essayez de corriger l'erreur en modifiant la commande
vapply()
commande.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# temp is already available in the workspace
# Definition of the basics() function
basics <- function(x) {
c(min = min(x), mean = mean(x), median = median(x), max = max(x))
}
# Fix the error:
vapply(temp, basics, numeric(3))