Ich möchte eine neue Spalte in einer data.table zurückgeben, die angibt, wie viele Zeilen abwärts liegen, bis ein Wert unter dem aktuellen Wert (von Temp) erreicht wird.R data.table Anzahl der Zeilen, bis der Wert erreicht ist
library(data.table)
set.seed(123)
DT <- data.table(Temp = runif(10,0,20))
Dies ist, wie ich es betrachten möchte:
set.seed(123)
DT <- data.table(
Temp = runif(10,0,20),
Day_Below_Temp = c("5","1","3","2","1","NA","3","1","1","NA")
)
Ok, das große @jeremycg ist, und um sicherzustellen, dass ich es richtig verstehe, wenn ich zu überprüfen, was der Temp Wert ging niedriger als eine alternative Säule (zusätzliche Spalte Zeile gesucht) Wert, wie würde sich diese Methode ändern? Danke – user3740289
Kein Problem. Sie würden die '. $ Temp [x: length (. $ Temp)]' in '. $ Additionalcolumn [x: length (. $ Temp)]' ändern. – jeremycg
Leider scheint diese (und meine eigene gelöschte Antwort) so langsam zu sein wie eine nasse Woche. Sogar bei 100K Fällen dauert dies eine Minute plus. Ich denke, dass es einen Weg geben muss, um dies durch einige Verbindungen oder etwas schwierig zu umgehen. Arun, wo bist du ?! – thelatemail