Lets nehme ich einen Datenrahmen haben:Erstellen Sie eine Folge von einzigartigen Beobachtungen Gruppe mit dplyr und erstellen Sie einen Unterschied in Monaten Spalte
User Date
aaaa 2015-11-26
aaaa 2015-12-26
aaaa 2016-01-26
bbbb 2014-10-15
bbbb 2014-11-15
bbbb 2015-05-16
Und ich möchte eine neue Spalte Variable (n), dass generieren:
- einen die eindeutigen Benutzer in Folge Count
- Wenn eine Lücke im Monat zu Monat gibt es, zählen, wie viele Monate die Lücke ist.
Wunsch ouput:
User Date Count Gap
aaaa 2015-11-26 1 0
aaaa 2015-12-26 2 0
aaaa 2016-01-26 3 0
bbbb 2014-10-15 1 0
bbbb 2014-11-15 2 0
bbbb 2015-05-16 3 6
Was passiert, wenn die Reihenfolge des Benutzers war 'c ("aaa", "aaa", "bbbb", "aaa", "bbbb", "bbbb") '? Sollte das Ergebnis gleich sein? Oder startet das eine neue Sequenz für User 'aaaa'? –
Nein, es war die Reihenfolge "a, a, b, a, b, b" - die Zählung sollte als "1,2,1,3,2,3" zurückgehen - der eigentliche Datenrahmen hat Tausende von eindeutigen Benutzern und Zehntausende von Beobachtungen. Ich nehme an, dass sie alle gemischt sind - obwohl ich leicht durch einzigartigen Benutzer gruppieren könnte, wenn es sein muss. –
Das sieht wie eine Option aus: http://StackOverflow.com/Q/22287062 Für die "Count" -Ding in dplyr, tun Sie einfach group_by und row_number. – Frank