IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

Colonne de dataframe en argument de fonction


Sujet :

R

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 210
    Par défaut Colonne de dataframe en argument de fonction
    Bonjour,
    Je souhaiterais multiplier par 2 une colonne d'un dataframe à l'intérieur d'une fonction prenant en argument ce dataframe et cette colonne.
    Ce code fonctionne à peu près :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    test<-function(dataframe,colonne){
      dataframe<-dataframe %>% mutate(colonne=2*colonne)
    }
    df<-data.frame(x=c(1,2))
    df<-test(df,df$x)
    Mais ce code ajoute une nouvelle variable ("colonne") au dataframe, variable constituée par les doubles de de la variable x.
    Comment faire pour que le calcul des doubles se fasse directement dans la colonne initiale (x) ?
    Merci !

  2. #2
    Membre éclairé
    Inscrit en
    Novembre 2003
    Messages
    554
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 554
    Par défaut
    Bonjour,

    Je ne sais pas comment ça pourrait fonctionner avec ton écriture, mais en arrive à un résultat probant avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    test <-function(dataframe,colonne) {
      dataframe[[colonne]] <- 2*dataframe[[colonne]]
    }
    df<-data.frame(x=c(1,2))
    df<-test(df,'x')
    Note que je n'ai pas passé le contenu de ton vecteur df$x, mais le nom de ce vecteur.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 210
    Par défaut
    Super ! Merci
    J'ajouterai juste une ligne pour conserver le dataframe
    (sinon, la fonction la seule colonne - un vecteur - et non l'ensemble du dataframe)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 12
    Dernier message: 10/06/2016, 12h33
  2. Espace dans les arguments de fonction
    Par black is beautiful dans le forum Windows
    Réponses: 2
    Dernier message: 11/03/2006, 12h06
  3. [JAVASCRIPT] passage d'argument à une fonction
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/06/2005, 18h17
  4. vector<bool> comme argument de fonction
    Par Krishna dans le forum SL & STL
    Réponses: 11
    Dernier message: 09/09/2004, 08h30
  5. Passer une fonction comme argument à une fonction
    Par Cocotier974 dans le forum Général Python
    Réponses: 4
    Dernier message: 29/06/2004, 13h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo