Créer une fonction générique
Vous pouvez créer vos propres fonctions S3. La première étape consiste à écrire la générique. Il s'agit généralement d'une fonction sur une seule ligne qui appelle UseMethod() (docs), en lui passant son nom sous forme de chaîne.
Le premier argument d'une générique S3 s'appelle habituellement x, même si ce n'est pas obligatoire. Il est aussi recommandé d'inclure un argument ... (appelé « ellipsis » ou « dot-dot-dot ») pour pouvoir transmettre des arguments d'une méthode à l'autre au besoin.
Dans l'ensemble, la structure d'une générique S3 ressemble à ceci.
an_s3_generic <- function(x, maybe = "some", other = "arguments", ...) {
UseMethod("an_s3_generic")
}
Cette activité fait partie du cours
Programmation orientée objet avec S3 et R6 en R
Instructions de l’exercice
- Définissez une fonction générique S3 pour calculer le nombre d'éléments dans un objet
x.- Assignez la
functionàget_n_elements. - Elle doit avoir les arguments
xet.... - Le corps de la fonction doit appeler
UseMethod().
- Assignez la
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Create get_n_elements
get_n_elements <- ___(___, ___)
{
___("___")
}