Ich habe eine Datentabelle wie dieseErstellen einer neuen Spalte durch Subtrahieren von Werten basierend auf einem Schlüssel in R?
ID DAYS FREQUENCY
"ads" 20 3
"jwa" 45 2
"mno" 4 1
"ads" 13 3
"jwa" 60 2
"ads" 18 3
ich eine Spalte hinzufügen möchten, dass die Tage auf der Grundlage der ID subtrahiert und die nächsten Tage zusammen subtrahieren. Meine neue Tabelle würde so mag:
ID DAYS FREQUENCY DAYS DIFF
"ads" 20 3 2 (because 20-18)
"jwa" 45 2 NA (because no value greater than 45 for that id)
"mno" 4 1 NA
"ads" 13 3 NA
"jwa" 60 2 15
"ads" 18 3 5
Bonus: Gibt es eine Möglichkeit, die Merge-Funktion zu benutzen?
Warum würden Sie/erwarten wollen Verwenden Sie eine Zusammenführung hier? Fwiw, wenn Sie ein Paket installieren möchten, kann dies mit 'library (data.table); setDT (DF) [order (TAGE), dd: = DAYS - shift (TAGE), by = ID] ' – Frank