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 :

Group by date


Sujet :

R

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2021
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Group by date
    Bonjour, nouveau sur R je sèche sur l'exploitation de données du type date/heures avec un champs "textuel".

    Pour illustrer voici un exemple des valeurs du dataset :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    id;date;liste_item
    1;18/02/2021 10:46:27;item1
    2;18/02/2021 10:46:27;item2
    3;18/02/2021 10:46:27;item1
    4;18/02/2021 10:46:27;item1
    5;18/02/2021 10:46:28;item2
    6;18/02/2021 10:46:30;item2
    7;18/02/2021 10:46:30;item2
    8;18/02/2021 10:47:11;item3
    9;18/02/2021 10:47:11;item2
    10;18/02/2021 10:48:35;item2
    11;18/02/2021 10:48:39;item2
    12;18/02/2021 10:48:50;item2
    13;18/02/2021 10:48:50;item3
    14;18/02/2021 10:49:12;item2
    15;18/02/2021 10:4934;item2
    J'ai un ensemble d'item à des heures différentes.
    Je cherche à obtenir un histogramme avec le nombre d'item (la somme de l'ensemble des item) classé par minute d'une part et une courbe qui distinguerait le nombre distinct de ces 3 items par minute.

    J'ai essayé de "feinter" mes lacunes en supprimant les secondes dans la colonne date et en faisant un group by du type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    mydata %>% group_by(date) %>%
      summarise(Ndate = n_distinct(date),list_item)
    Mais le résultat ne correspond pas à ce que je cherche...

    Je vous remercie d'avance de vos lumières

  2. #2
    Membre expérimenté
    Inscrit en
    Novembre 2009
    Messages
    703
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 703
    Points : 1 311
    Points
    1 311
    Par défaut package lubridate
    Bonjour,

    Le package lubridate est très utile pour manipuler les dates.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    df <- read.table(header=TRUE, sep=";", text="
    id;date;liste_item
    1;18/02/2021 10:46:27;item1
    2;18/02/2021 10:46:27;item2
    3;18/02/2021 10:46:27;item1
    4;18/02/2021 10:46:27;item1
    5;18/02/2021 10:46:28;item2
    6;18/02/2021 10:46:30;item2
    7;18/02/2021 10:46:30;item2
    8;18/02/2021 10:47:11;item3
    9;18/02/2021 10:47:11;item2
    10;18/02/2021 10:48:35;item2
    11;18/02/2021 10:48:39;item2
    12;18/02/2021 10:48:50;item2
    13;18/02/2021 10:48:50;item3
    14;18/02/2021 10:49:12;item2
    15;18/02/2021 10:49:34;item2
    ")
    df$date <- lubridate::parse_date_time(df$date, "dmYHMS")
    df$minute <- lubridate::minute(df$date)
     
    table(df$minute)
    #> 
    #> 46 47 48 49 
    #>  7  2  4  2
     
    aggregate(liste_item ~ minute, df, length)
    #>   minute liste_item
    #> 1     46          7
    #> 2     47          2
    #> 3     48          4
    #> 4     49          2
     
    aggregate(liste_item ~ minute, df, dplyr::n_distinct)
    #>   minute liste_item
    #> 1     46          2
    #> 2     47          2
    #> 3     48          2
    #> 4     49          1
     
    # Created on 2021-02-23 by the reprex package (v0.3.0.9001)
    Cordialement,

  3. #3
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Février 2021
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Super, un grand merci ! J'ai pu effectivement regrouper mes items par date.

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

Discussions similaires

  1. ORDER BY et GROUP BY + dates
    Par franquis dans le forum Débuter
    Réponses: 2
    Dernier message: 19/11/2009, 10h21
  2. Group by date sans les heures: minutes: secondes
    Par KING_OF_GRACELAND dans le forum SQL
    Réponses: 13
    Dernier message: 13/03/2008, 10h37
  3. Group by date dans un select
    Par lampre dans le forum Requêtes
    Réponses: 4
    Dernier message: 04/09/2006, 11h16
  4. Réponses: 7
    Dernier message: 23/09/2005, 20h58
  5. Group by date
    Par cdlr27 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 14/06/2004, 09h33

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