Ces fonctions lapply
, sapply
, tapply
et lapply
permettent d’appliquer une fonction (mean
, par exemple, pour calculer une moyenne) sur des données, de façon itérative. Autrement dit, elles font la même chose qu’une boucle for()
, tout en ayant une syntaxe concise, puisque ça se passe en une ligne de commande, et en étant plus rapide.
Néanmoins, de mon côté, j’ai toujours eu des difficultés à les employer parce que je ne me souviens jamais laquelle utiliser selon :
- la structure de mes données d’entrées (data frame, vecteur, liste),
- ce que je veux faire (appliquer une fonction par sous-groupe de données, appliquer une fonction sur les marges (sur chaque ligne ou chaque colonne) d’un data frame),
- ce que je souhaite obtenir en sortie (un vecteur, une liste).
Savoir utiliser ces fonctions peut cependant s’avérer très utile. Alors, j’ai fini par me faire un petit mémo, que je vous partage ici.