Я намагаюся об'єднати стовпець рядків разом на основі групування. Я використовую код, який мені здається ідентичним тому, що використовували інші користувачі (наприклад, використовуйте dplyr для об'єднання стовпця), але це не працює, і я не можу зрозуміти, чому.
a = tibble(
x = c(1,2,1,2),
z = c("1","2","3","4")
)
a %>% group_by(x) %>% summarise(val=paste(z, collapse=" "))
Дає:
val
1 1 2 3 4
Вона діє так, ніби існує лише одна група. Проте, коли я виконую іншу функцію, групування працює правильно:
a %>% group_by(x) %>% tally()
# A tibble: 2 × 2
x n
<dbl> <int>
1 1 2
2 2 2
Будь-яка ідея, яка проблема може бути?
Відповіді:
3 для відповіді № 1Це може бути таке plyr
пакет також був завантажений і замаскований summarise
функція від dplyr
Обидва з них мають однакову назву функції. Одним з варіантів є використання ::
, щоб вказати функцію з dplyr
пакет
a %>%
group_by(x) %>%
dplyr::summarise(val=paste(z, collapse=" "))
# A tibble: 2 x 2
# x val
# <dbl> <chr>
#1 1 1 3
#2 2 2 4