Wiem, że jest prosty sposób na zrobienie tego ... ale nie mogę tego rozgryźć.Dane zagregowane w jednej kolumnie na podstawie wartości w innej kolumnie
Mam dataframe w moim skryptu R, który wygląda mniej więcej tak:
A B C
1.2 4 8
2.3 4 9
2.3 6 0
1.2 3 3
3.4 2 1
1.2 5 1
Należy zauważyć, że A, B i C są nazwy kolumn. I próbuję uzyskać zmienne w ten sposób:
sum1 <- [the sum of all B values such that A is 1.2]
num1 <- [the number of times A is 1.2]
Dowolny łatwy sposób to zrobić? Zasadniczo chcę, aby skończyć z ramki danych, które wygląda następująco:
A num totalB
1.2 3 12
etc etc etc
Gdzie „num” oznacza liczbę razy szczególności Wartość pojawiły, a „totalB” jest sumą wartości B podano wartość A.
łącznie, to po prostu wykorzystuje wszystkie wiersze w moim ramki danych. co, gdybym chciał powiedzieć, by zagregować tylko dla konkretnego wiersza z określonym warunkiem (np. gdy c == 1) – CodeGuy
@CodeGuy: Po prostu 'podzbiór' to, np. 'agregat (B ~ A, podzbiór (df, C == 1), suma)' – NPE