2016-11-12 6 views
0

Ich habe eine Liste von 53 Datenrahmen (purchase01 to purchase53), sortiert nach Datum, mit 18 Variablen und einer bestimmten Anzahl von Zeilen (versucht, aber kann kein Beispiel auf die folgenden einfügen). Ich möchte aggregieren jedes einzelne Datenrahmen durch seine wiederholten Werte von "V9" - Faktor - durch Summe der Spalte "V2" - numerisch. Ich konnte die Antwort noch nicht finden.R Aggregatliste des Datenrahmens

Für nur einen Datenrahmen kann ich aggregate.data.frame(purchase00$V12, by = list(purchase00($V9),FUN = sum) verwenden und es funktioniert einwandfrei. llply

tryed I, llply(.data = purchase, .fun = aggregate.data.frame, by= list(unique((V9),sum, .inform = TRUE)

aber ohne Erfolg, so scheint es, dass die Funktion nicht durch für jeden Datenrahmen empfängt, noch die Funktion Summe. Auch das Mapply funktionierte nicht gut für mich.

Antwort

2
## assuming your list is called list_of_df 
require(dplyr) 

summarized_list <- lapply(list_of_df, function(x) { 

x %>% group_by(V9) %>% summarize(sum(V2)) 

}) 

Dies wird eine Liste mit der Zusammenfassung jedes Datenrahmens in Ihrer Einkaufsliste zurückgeben.

Wenn Sie dplyr nicht verwenden möchten, können Sie dies mit der Basis tun:

lapply(list_of_df, function(x) {aggregate(values ~ day_of_week, data = x, sum) }) 
+0

die dplyr gavte mir ein sumaraized Daten, in dem Fall, dass ich ohne die Ausgabe benötigt sommirize es. Das Schlafen klappte einfach gut. Danke –

Verwandte Themen