J'ai l'ensemble de données ci-dessous, j'essaie de trouver le nombre de jours où chaque machine était active et en mode veille basé sur SwitchedOnDate.Compte sur chaque groupe correspondant aux critères R
MachineID InstalledDate SwitchedOnDate Status
1 2010-02-18 2010-02-19 SleepMode
1 2010-02-18 2010-02-20 Active
1 2010-02-18 2010-02-21 SleepMode
1 2010-02-18 2010-02-22 Active
2 2010-02-20 2010-02-21 Active
2 2010-02-20 2010-02-22 SleepMode
3 2010-02-10 2010-02-18 SleepMode
4 2010-03-10 2010-03-15 Active
Alors ma sortie devrait ressembler à quelque chose comme ça,
MachineID SleepModeDays ActiveDays
1 2 2
2 1 1
3 1 0
4 0 1
La réponse reflète la solution fournie. Dans le code, la colonne SwitchedOnDate ne joue aucun rôle. S'il vous plaît clarifier, si la colonne SwitchedOnDate doit également être considérée. –
Vous n'avez pas besoin de '.N' car' dcast' a un paramètre 'fun.aggregate', qui vaut par défaut' longueur' (voir [ici] (http://stackoverflow.com/questions/33051386/dcast-restructuring -de-long-à-large-format-ne-travaillant/33051521 # 33051521) pour une explication). – Jaap
Salut Salut. Oui, l'idée est de savoir "Pour chaque machine, combien de jours différents il était en mode sommeil et combien de jours différents il était en mode actif" –