Summarizing nach Subgruppenprozentsatz in R
Ich habe einen Datensatz wie diesen:
df = data.frame(group = c(rep('A',4), rep('B',3)),
subgroup = c('a', 'b', 'c', 'd', 'a', 'b', 'c'),
value = c(1,4,2,1,1,2,3))
group | subgroup | value
------------------------
A | a | 1
A | b | 4
A | c | 2
A | d | 1
B | a | 1
B | b | 2
B | c | 3
Was ich möchte, ist, den Prozentsatz der Werte jeder Untergruppe innerhalb jeder Gruppe zu erhalten, d. H. Die Ausgabe sollte sein:
group | subgroup | percent
------------------------
A | a | 0.125
A | b | 0.500
A | c | 0.250
A | d | 0.125
B | a | 0.167
B | b | 0.333
B | c | 0.500
Beispiel für Gruppe A, Untergruppe A: Der Wert war 1, die Summe der gesamten Gruppe A ist 8 (a = 1, b = 4, c = 2, d = 1) - daher 1/8 = 0,125
isher habe ich nur ziemlich einfache Aggregate wie @ gefundDie, aber ich kann nicht herausfinden, wie man den Teil "Teilen durch eine Summe innerhalb einer Untergruppe" ausführt.