Ich versuche eval()
Funktion in R zu verwenden, um Ausdrücke zu berechnen. Ich erhalte die Formel aus einem Datenrahmen und speichern Sie es in einer Variablen sagen 'Form'. Jetzt habe ich versucht, diesen Ausdruck zu bewerten wie folgt:eval() Funktion in R
df
x y z
1 2 3
4 5 6
7 8 9
form = "x+y+z"
expr = expression(form)
df = data.table::data.table(df)
result = eval(expr, df[1])
Ich erhalte das Ergebnis als „x + y + z“ anstelle von 6. Wenn ich direkt die Formel in die expr = expression(..)
passieren, erhalte ich die Korrektes Ergebnis, aber ich konnte das nicht tun, weil ich die Formel von einem anderen Datenrahmen abrufe. Bitte vorschlagen.
Vielen Dank Konrad, es hat funktioniert. –
@Rbud -> wenn es funktioniert, best practice = akzeptiere Konrads Antwort. :) –
Ich konnte nicht innerhalb von 10 Minuten nach der Veröffentlichung meiner Frage :). So war es jetzt –