vendredi 11 février 2011

La fonction apply()

La fonction apply() permet d'appliquer une fonction (par exemple une moyenne, une somme) à chaque ligne ou chaque colonne d'un tableau de données. Cette fonction prend 3 arguments dans l'ordre suivant:

  • nom du tableau de données
  • un nombre pour dire si la fonction doit s'appliquer aux lignes (1), aux colonnes (2) ou aux deux (c(1,2))
  • le nom de la fonction à appliquer

Voici un exemple. L'objectif est de calculer la somme de chaque ligne ou de chaque colonne d'un tableau :
# On crée d'abord une matrice avec 2 lignes et 3 colonnes
data<-matrix(c(1,2,3,4,5,6), nrow=2)
# On donne un nom aux lignes et aux colonnes
colnames(data)=c("C1","C2","C3")
rownames(data)=c("L1","L2")
# On utilise la fonction apply() pour faire la somme de chaque ligne
apply(data, 1, sum)
# Pour faire la somme de chaque colonne, on remplace 1 par 2
apply(data, 2, sum)

8 commentaires: