Gleiche Funktion über mehrere data frames in R
Ich bin neu in R, und dies ist eine sehr einfache Frage. Ich habe eine Menge ähnliche Dinge, was ich haben will, aber nicht genau. Im Grunde habe ich mehrere Daten-frames und ich will einfach ausführen derselben Funktion über alle von Ihnen. Eine for-Schleife arbeiten könnte, aber ich bin nicht sicher, wie es sich richtig zu call-Daten-frames. Es scheint auch die meisten lieber den lapply Ansatz mit R. ich habe schon mit der get-Funktion auch ohne Erfolg. Ich entschuldige mich, wenn dies ist eine duplizierte Frage. Jede Hilfe wäre sehr geschätzt werden!
Hier mein über Vereinfachtes Beispiel:
2 data frames: df1, df2
df1
start stop ID
0 10 x
10 20 y
20 30 z
df2
start stop ID
0 10 a
10 20 b
20 30 c
was ich will, ist eine 4. Spalte mit dem Durchschnitt von start-und Stopp für beide dfs -
df1
start stop ID Avg
0 10 x 5
10 20 y 15
20 30 z 25
Ich dies tun kann ein Daten-frame zu einem Zeitpunkt mit:
df1$Avg <- rowMeans(subset(df1, select = c(start, stop)), na.rm = TRUE)
aber ich will das es läuft, auf alle dataframes.
- Ich denke, dies ist auf dem richtigen Weg, ich kann einfach nicht damit es funktioniert mit einer Funktion wie der rowMeans oben. stackoverflow.com/questions/19738565/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Machen Sie eine Liste von Daten-frames, dann verwenden Sie lapply auf die Funktion anwenden, um Sie alle.
Den lapply wird dann füttern Sie in jedem Daten-frame als x nacheinander.
Legen Sie Sie in eine Liste, und führen Sie dann
rowMeans
über die Liste.In Fall, dass Sie wollen, dass alle Ausgänge in die gleiche Datei, dies kann helfen.