Ich versuche eine Fensterfunktion mit dplyr zu erstellen, die einen neuen Vektor mit dem Unterschied zwischen jedem Wert und dem ersten seiner Gruppe zurückgibt. Zum Beispiel, mit diesem Datensatz:
%Vor%Das erstellt diesen Datensatz:
%Vor%Und diese Gruppierung gegeben:
%Vor%Würde dieses Ergebnis geben:
%Vor% Also würde ich für jede Gruppe von Benutzern, Bibliotheken und Kuratoren, den RF-Wert abzüglich des RF-Wertes mit IterationNum = 0 erhalten.
Ich habe versucht, mit der first
-Funktion, der rank
-Funktion und anderen zu spielen, konnte aber keinen Weg finden, es zu finden.
--- BEARBEITEN ---
Das habe ich versucht:
%Vor%Und:
%Vor%Was R abstürzt und gibt diese Fehlermeldung zurück:
pure virtuelle Methode namens terminate wird aufgerufen, nachdem eine Instanz geworfen wurde von 'Rcpp :: exception' what (): inkompatible Größe (% d), erwartet% d (die Gruppengröße) oder 1 '
Die zwei Ansätze, die ich oben kommentiert habe, sind wie folgt.
%Vor% Oder verwenden Sie arrange
, um die Daten nach iterationNum zu sortieren:
Wie Sie sehen, erzeugen beide die gleiche Ausgabe für die Beispieldaten.
Tags und Links r dplyr window-functions