Oblicz procenty kolumny w ramce danych - „pogrupowane” według kolumny
Jestem początkującym R i doszedłem do punktu, w którym potrzebuję możliwości obliczania procentów wartości w ramce danych, ale „zgrupowanych” przez inną wartość kolumny, dość często.
Mam ramkę danych z około 1000 wierszy, zawierającą mediatype, wersję, kolekcję (= rok) i licznik (dla tego roku). Mogę je filtrować, aby uzyskać tylko konkretny mediaty:
trSpdf <- trS[trS$Mediatype == 'application/pdf',]
i uzyskaj następujące przykładowe wyjście:
> trSpdf
Mediatype Version Collection Count
39 application/pdf -1 co2008 2.0
40 application/pdf -1 co2009 5.0
43 application/pdf 1 co2008 1.0
44 application/pdf 1 co2009 1.0
48 application/pdf 1.1 co2008 16.0
52 application/pdf 1.2 co2008 20.0
53 application/pdf 1.2 co2009 90.0
... (continuing) ...
Chcę obliczyć procent każdej wersji dla każdej kolekcji (= rok) w porównaniu ze wszystkimi wersjami w tej kolekcji, więc w tym przykładzie wynik powinien być:
5.12% of all versions in co2008 were version -1 (2.0 / total sum for co2008)
2.56% of all versions in co2008 were version 1 (1.0 / total sum for co2008)
...
93,75% of all versions in co2009 were version 1.2 (90.0 / total sum for co2009)
...
Z góry dziękuję za odpowiedzi na pytanie, w jaki sposób mogę to rozwiązać.