CommencerCommencer gratuitement

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

Afficher le cours

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 que basics() 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))
Modifier et exécuter le code