Używam mtcars
zbioru danych. Chcę znaleźć liczbę rekordów dla określonej kombinacji danych. Coś bardzo podobnego do count(*)
klauzuli group by w SQL. ddply()
od Plyr pracuje dla mnie
library(plyr)
ddply(mtcars, .(cyl,gear),nrow)
ma wyjście
cyl gear V1
1 4 3 1
2 4 4 8
3 4 5 2
4 6 3 2
5 6 4 4
6 6 5 1
7 8 3 12
8 8 5 2
Używając tego kodu
library(dplyr)
g <- group_by(mtcars, cyl, gear)
summarise(g, length(gear))
ma wyjście
length(cyl)
1 32
Znalazłem różne funkcje, do których mogę przejść, summarise()
ale żadna z nich nie działa. Jedną z funkcji, którą znalazłem, jest ta sum(G)
, która zwróciła
Error in eval(expr, envir, enclos) : object 'G' not found
Próbowałem użyć n()
, który wrócił
Error in n() : This function should not be called directly
Co ja robię źle? Jak mogę dostać group_by()
/ summarise()
pracować dla mnie?
ddply
. Z jakiej wersji dplyr korzystasz? Spróbuj zaktualizować?