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 :

Renommer des colonnes selon condition


Sujet :

R

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2015
    Messages : 15
    Points : 17
    Points
    17
    Par défaut Renommer des colonnes selon condition
    bonjour

    j'ai une matrice et je voudrais nommer les colonnes qui ont plus de 50 zéro A et celles qui ont moins de 50 zéro B pour ainsi obtenir un vecteur du genre (A,B,B,A,A......)

    je vous remercie !

  2. #2
    Modératrice

    Femme Profil pro
    Statisticienne, Fondatrice de la société DACTA
    Inscrit en
    Juin 2010
    Messages
    893
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Statisticienne, Fondatrice de la société DACTA

    Informations forums :
    Inscription : Juin 2010
    Messages : 893
    Points : 2 673
    Points
    2 673
    Par défaut
    Bonjour,

    Pour faire cela, voir par exemple du côté de la fonction "apply" qui permet d'appliquer une fonction donnée (par exemple la fonction qui va tester le nombre de 0) sur chacune des colonnes d'une matrice.

    Exemple de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Mat <- matrix( c(sample(0:2, 300, replace = TRUE, prob = c(70, 15, 15)), sample(0:2, 100, replace = TRUE, prob = c(40, 30, 30))), ncol = 4, byrow = FALSE)
     
    v <- apply(Mat, 2, function(x){ return( ifelse( length(which(x==0))>50, "A", "B") )  } )
    Bonne continuation


    Cordialement,


    A.D.

    Forum R
    Fournir le code utilisé (pensez aux balises code !), les packages nécessaires, ainsi qu'un court mais représentatif extrait du jeu de données et les éventuels messages d'erreur.
    Recherche d'informations concernant R : RSiteSearch / tutoriels : http://r.developpez.com/cours/ .

    Pensez également au bouton "Résolu" et à voter (en bas à droite des messages) lorsque vous avez obtenu une réponse satisfaisante.

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2015
    Messages : 15
    Points : 17
    Points
    17
    Par défaut
    perfect !!!
    oui je me doutais qu'il fallait utiliser apply, mais après... :/
    merci merci merci !

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

Discussions similaires

  1. Copier des données selon conditions
    Par BOU59000 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/07/2009, 17h15
  2. [XL-2003] Cacher des colonnes selon le mois en cours
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/04/2009, 10h05
  3. Renommer des photos selon 2 colonnes
    Par Geprocor dans le forum Macros et VBA Excel
    Réponses: 37
    Dernier message: 29/05/2008, 09h32
  4. copier des lignes selon condition
    Par malek1913 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/02/2008, 16h45
  5. [VBA-E] Suppression des colonnes avec condition
    Par desdenova dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/02/2007, 13h39

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