Ich verwende R, um Daten zu scrubben. Ich habe einen Datensatz mit 1.000 Spalten, die alle etwas modifiziert haben. Ich finde, dass der Operator $
meinen Code unlesbar macht. Ich mag Datenschritte mit dem Befehl with
, so dass alle Elemente des Datenrahmens lokal begrenzt sind (verzeihen Sie meine fast vollständige Ignoranz der Informatik hier). Nachdem alles fertig ist, möchte ich jedoch alle Variablen, die ich in den Schritt with
geschrieben habe, zurückgeben und möglicherweise überschreiben, welche früher ich eingezogen habe. Ich bemerke, dass der Befehl ls()
nur Vars betrachtet, die im Schritt with
definiert sind, aber wie kann ich sie zu einem Datenrahmen verketten?Wie man "die Umgebung zurückgibt" von `mit`
Als Beispiel für eine gewünschte Ausgabe:
set.seed(123)
myDat <- data.frame('x'=rnorm(3))
y <- with(myDat, {
xgt0 <- x > 0
x2 <- x^2
foo()
})
print(y)
x1 xgt0 x2
1 -0.5604756 FALSE 0.31413295
2 -0.2301775 FALSE 0.05298168
3 1.5587083 TRUE 2.42957161