Mam plik data.frame mydf z około 2500 wierszami. Te wiersze odpowiadają 69 klasom obiektów w kolumnie 1 mydf $ V1
i chcę policzyć, ile wierszy mam na klasę obiektów. Mogę uzyskać czynnik tych klas z
objectclasses = unique(factor(mydf$V1, exclude="1"));
Jaki jest dobry sposób liczenia wierszy według klasy obiektu?
1 odpowiedź
Użyj biblioteki dplyr
:
library(dplyr)
set.seed(1)
dat <- data.frame(ID = sample(letters,100,rep=TRUE))
dat %>%
group_by(ID) %>%
summarise(no_rows = length(ID))
Zwróć uwagę na użycie%>%,
które jest podobne do użycia pipes
w bash'u. W efekcie kod w pipes przesyła date
do group_by
, a wynik tej operacji jest przekazywany do podsumowania.
wynik:
Source: local data frame [26 x 2]
ID no_rows
1 a 2
2 b 3
3 c 3
4 d 3
5 e 2
6 f 4
7 g 6
8 h 1
9 i 6
10 j 5
11 k 6
12 l 4
13 m 7
14 n 2
15 o 2
16 p 2
17 q 5
18 r 4
19 s 5
20 t 3
21 u 8
22 v 4
23 w 5
24 x 4
25 y 3
26 z 1