Небольшое отклонение от оригинального ответа от Харро:
library(tidyr)
dfr <- data.frame(
id = c(1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3),
bool = c("Y", "N", "Y", "Y", "Y", "Y", "N", "N", "N", "Y", "N", "N", "N")
)
dfrSummary <- dfr %>%
group_by(
id, bool
) %>%
summarize(
count = n()
) %>%
spread(
key = bool,
value = count,
fill = 0
)