Я работаю на наборе данных бейсбола:Группировки внутри группы в R, plyr/dplyr
data(baseball, package="plyr")
library(dplyr)
baseball[,1:4] %>% head
id year stint team
4 ansonca01 1871 1 RC1
44 forceda01 1871 1 WS3
68 mathebo01 1871 1 FW1
99 startjo01 1871 1 NY2
102 suttoez01 1871 1 CL1
106 whitede01 1871 1 CL1
Прежде всего я хочу, чтобы сгруппировать данные, установленные командой, чтобы найти первый год появляется каждая команда, и число различных игроков, которые когда-либо играли для каждой команды:
baseball[,1:4] %>% group_by(team) %>%
summarise("first_year"=min(year), "num_distinct_players"=n_distinct(id))
# A tibble: 132 × 3
team first_year num_distinct_players
<chr> <int> <int>
1 ALT 1884 1
2 ANA 1997 29
3 ARI 1998 43
4 ATL 1966 133
5 BAL 1954 158
Теперь я хочу, чтобы добавить столбец с указанием максимального количества лет любой игрок (идентификатор) играет для команды в вопросе. Для этого мне нужно как-то группировать игрока в пределах существующей группы (группы) и выбирать максимальное количество строк. Как мне это сделать?
Вы загружаете 'plyr', но не использовать его вообще. Я бы рекомендовал придерживаться 'dplyr', только если вам действительно не нужны функции plyr. – Gregor
@Gregor Я думаю, что набор данных 'baseball' от' plyr' – akrun