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 :

Sélectionner les 50 plus grande valeur d'une colonne d'un dataframe


Sujet :

R

  1. #1
    Membre à l'essai
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juillet 2016
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2016
    Messages : 13
    Points : 14
    Points
    14
    Par défaut Sélectionner les 50 plus grande valeur d'une colonne d'un dataframe
    Bonjour à tous,

    J'ai un data frame ayant pour dimension: 5026 45.

    Voici un petit exemple fictif de mon dataframe:


    Sample1 Sample2
    PF32 14 -3
    PF23 -5 12
    PF45 9 9
    PF89 0 4

    Comme je l'ai écris dans le titre, je cherche à récupérer les 50 meilleures (plus grande) valeurs de Sample1, puis de Sample2, etc ... Tout en gardant le nom des rangées (PF32 par ex).

    J'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sort(data$Sample1, decreasing = TRUE)
    Seulement, cela me renvoie une liste sans associer le nom des rangées.

    Avez vous une idée de comment procéder ?

    Merci !

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 476
    Points : 831
    Points
    831
    Par défaut
    bonjour , une solution avec le tidyverse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    library(tidyverse)
    data <- rownames_to_column(data,'nom_explicite')## on transforme les valeurs de rangées en une colonne nommée, je te laisse choisir un nom plus adapté
     
    ##ex pour  Sample1 
    data_sample1<- data %>% arrange(desc(Sample1)) %>% ## on classe par ordre décroissant
     slice(1:50)%>% ## on sélectionne les 50 premières lignes (les plus hautes)
    select(nom_explicite,Sample1) ## on sélectionne éventuellement les 2 colonnes
     
    ## idem pour pour Sample2

  3. #3
    Membre à l'essai
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Juillet 2016
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2016
    Messages : 13
    Points : 14
    Points
    14
    Par défaut
    Super, ça marche. Merci beaucoup Xavier-Pierre.

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

Discussions similaires

  1. [XL-2010] rechercher les deux plus grandes valeurs d'une colonne
    Par kingjon dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/06/2016, 15h10
  2. Réponses: 2
    Dernier message: 31/01/2011, 09h51
  3. Sélectionner les 15 plus grandes valeurs pour chaque mois
    Par Monkey_D.Luffy dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 24/06/2009, 10h50
  4. isoler les 2 plus grandes valeurs d'une liste
    Par marlene.ln dans le forum Access
    Réponses: 3
    Dernier message: 29/01/2007, 10h22
  5. vba-Excel-Plus grande valeur d'une colonne
    Par VBBBA dans le forum Macros et VBA Excel
    Réponses: 33
    Dernier message: 08/08/2006, 10h50

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