我正在尝试根据分组将一列字符串连接在一起。我使用的代码对我来说似乎与其他人使用的代码相同(例如使用 dplyr 连接列 https://stackoverflow.com/questions/28752805/use-dplyr-to-concatenate-a-column)但它不起作用,我不明白为什么。
a = tibble(
x = c(1,2,1,2),
z = c('1','2','3','4')
)
a %>% group_by(x) %>% summarise(val=paste(z, collapse=" "))
Gives:
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
知道可能是什么问题吗?
可能是这样plyr
包也被加载并屏蔽了summarise
函数来自dplyr
因为它们都有相同的函数名称。一种选择是使用::
指定函数dplyr
package
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
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)