1
Ich habe einen Datenrahmen.Auswahl von Werten aus einer Spalte basierend auf dem Wert aus einer anderen Spalte dynamisch
df <- data.frame(A = 1:10, B = 101:110, C = 201:210)
Und ich will Werte in Spalte A finden die folgenden Kriterien verwenden,
df$A[df$B > 101 & df$B < 105]
[1] 2 3 4
Allerdings möchte ich programmatisch die Kriterien der Lage sein, den folgenden Ansatz verwenden,
var <- noquote(paste0("df$", names(df[2])))
df$A[var > 101 & var < 105]
Aber alles, was ich bekomme, ist integer(0)
.
Offensichtlich stimmt etwas nicht. Könnte jemand helfen? Vielen Dank.
verwenden Warum wollen Sie durch diesen Ansatz gehen? – akrun
akrun, ich möchte bestimmte Spalten in diesem Datenrahmen durchlaufen und Werte aus Spalte A extrahieren, die die Kriterien erfüllen. – useryk
Eine Option ist 'get', wenn Sie' var <- name (df) [2]; Bibliothek (data.table); setDT (df) [get (var)> 101 & get (var) <105] $ A # [1] 2 3 4' – akrun