1. Grâce à ce formulaire vous pouvez proposer une astuce ou un script sur R.
  2. Votre script doit pouvoir être lancé en l'état. Veuillez penser à :
    • inclure le chargement des "library" nécessaires
    • construire un petit jeu de données si besoin est.
    • commenter les lignes de codes pour en faciliter la compréhension.
  3. Le titre de votre script ou astuce doit être clair et explicite.
  4. Pensez à mettre votre code entre les balises [R] et [/R]; Pour cela, vous pouvez utiliser le bouton

Vous pouvez utiliser vos comptes Facebook, twitter ou google pour vous identifer (google est compatible yahoo, openID...)
L'ideal étant de vous connecter si vous avez un compte utilisateur, ou faire une demande de compte utilisateur si vous n'en avez pas encore.
Créer un compte va vous permettre de pouvoir éditer vos codes et de mettre en avant votre site internet.
Sinon vous pouvez soumettre anonymement en remplissant les champs ci-après.







Choisissez les catégories correspondantes à votre Code:

  • algorithmique
  • Analyse de survie
  • base indispensable
  • bayésien
  • configuration de R
  • exportation de données
  • fonctions utiles
  • graphique
  • importation de données
  • inférence
  • manipulation de données
  • message d'erreur
  • modélisation
  • Non classé
  • optimisation
  • planification
  • programmer avec R
  • regression linéaire
  • Test
  • Transformation de données


Comment utiliser apply dans R ?

1
dans base indispensable, fonctions utiles, manipulation de données, Transformation de données
R n’aime pas les boucles: c’est long, parfois ca plante..mais surtout c’est long :) .

Une des fonctions qu’il faut absolument maîtriser est apply. Elle permet de réaliser en parallèle la même opération sur toutes les lignes/ toutes les colonnes d’une matrice ou d ‘un jeu de données.


Pour utiliser apply, il faut
  • créer une fonction qui prend en paramètre un vecteur et qui nous ressort une transformation de ce vecteur.
  • que ce vecteur soit de la forme qu’une ligne ou qu’une colonne de notre jeu de données (prendre en compte les variables quali, l’ordre des variables..)
  • lancer apply sur son jeu de données, en précisant la fonction et s’il faut le prendre en ligne ou en colonne.


 
 data(iris)
# on va fabriquer une fonction qui, pour chaque ligne, nous donnera la somme de Sepal.Length, Sepal.Width, Petal.Length et Petal.Width
 
masomme<-function(monvec){
# les vecteurs sont ici de la forme c(5.1,3.5,1.4,0.2, setosa). Un simple sum(monec) ne fonctionnerait pas à cause de setosa
return(sum(as.numeric(monvec[1:4])))# le as.numeric permet de passer outre la transformation en caractères
}
lasomme<-apply(data.frame(iris),FUN=masomme,MARGIN=1)
head(cbind(iris,lasomme))# on rajoute une colonne avec le résultat et on regarde le début du jeu de données 
 
 
 



Cette transformation restera très rapide même avec un très grand nombre de lignes

Proposé par pierre.

Ce script vous à rendu service? remerciez l'auteur en votant ici:
- ça ne sert à rien -- c\'est interessant - (score de +1 sur 7 votes)
Loading ... Loading ...

Un commentaire

  1. Posté le 3 février 2012 a 15 h 53 min | Permalink

    un bon article en anglais qui dérboussaille bien un peu tout ça:

    http://www.r-bloggers.com/say-it-in-r-with-by-apply-and-friends/

Poster un commentaire


Votre email ne seras jamais communiqué champs requis désigné par une *

*
*


sept + 9 =

Formation logiciel R