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.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage