Das ist wahrscheinlich eine dumme Frage, aber ich habe Crawleys Kapitel über Datenframes gelesen und das Internet durchforstet und konnte noch nichts machen.Zeilen auf Basis bestimmter Faktorkombinationen zusammenfassen
Hier ist ein Beispieldatensatz ähnlich wie ich:
> data<-data.frame(site=c("A","A","A","A","B","B"), plant=c("buttercup","buttercup",
"buttercup","rose","buttercup","rose"), treatment=c(1,1,2,1,1,1),
plant_numb=c(1,1,2,1,1,2), fruits=c(1,2,1,4,3,2),seeds=c(45,67,32,43,13,25))
> data
site plant treatment plant_numb fruits seeds
1 A buttercup 1 1 1 45
2 A buttercup 1 1 2 67
3 A buttercup 2 2 1 32
4 A rose 1 1 4 43
5 B buttercup 1 1 3 13
6 B rose 1 2 2 25
Was ich ein Szenario tun möchte, ist in den „Samen“ und „Früchte“ werden, wenn einzigartiger Ort & Pflanze & Behandlung & plant_numb Kombinationen summierten existieren. Ideal gelegen in einer Reduktion der Zeilen führt, würde dies aber eine Erhaltung der ursprünglichen Spalten (dh ich das obige Beispiel muß wie folgt aussehen :)
site plant treatment plant_numb fruits seeds
1 A buttercup 1 1 3 112
2 A buttercup 2 2 1 32
3 A rose 1 1 4 43
4 B buttercup 1 1 3 13
5 B rose 1 2 2 25
Dieses Beispiel ist ziemlich einfach (mein Dataset ~ 5000 Zeilen), und obwohl hier nur zwei Zeilen angezeigt werden, die summiert werden müssen, variieren die Anzahl der Zeilen, die summiert werden müssen, und reichen von 1 bis ~ 45.
Ich habe rowsum() und tapply() mit ziemlich düsteren Ergebnissen bisher versucht (die Fehler sagen mir, dass diese Funktionen für Faktoren nicht sinnvoll sind), also wenn Sie mir sogar in die richtige Richtung zeigen könnten, ich Ich würde es sehr zu schätzen wissen!
Vielen Dank!
Blick auf die 'plyr' und' data.table' Tag. Viele Fragen befassen sich hauptsächlich damit. Viel Glück! – Chase
Siehe auch http://4dpiecharts.com/2011/12/16/a-quick-primer-on-split-apply-combine-problems/ –