R 将行与部分重复的信息合并
我有一些数据帧看起来像:R 将行与部分重复的信息合并,r,R,我有一些数据帧看起来像: data.frame(chr=c(3,3,3,1,1),start=c(15,52,17,1,80),end=c(52,68,18,15,92),strand=c("+","+","+","-","-"),item=c("A","A","B","C","C"))
data.frame(chr=c(3,3,3,1,1),start=c(15,52,17,1,80),end=c(52,68,18,15,92),strand=c("+","+","+","-","-"),item=c("A","A","B","C","C"))
chr start end strand item
1 3 15 52 + A
2 3 52 68 + A
3 3 17 18 + B
4 1 1 15 - C
5 1 80 92 - C
项目A和C可以有两个或多个不同的开始和结束,但其余列在每个组中是相同的。有没有办法像这样连接开始和停止信息
chr start end strand item
1 3 15,52 52,68 + A
2 3 17 18 + B
3 1 1,80 15,92 - C
谢谢你的帮助 我们可以通过'chr'、'strand'、'item'和
paste
将'start'、'end'值与toString
(=>paste(,collapse=“,”)
)
-输出
# A tibble: 3 x 5
# chr strand item start end
# <dbl> <chr> <chr> <chr> <chr>
#1 3 + A 15, 52 52, 68
#2 3 + B 17 18
#3 1 - C 1, 80 15, 92
# A tibble: 3 x 5
# chr strand item start end
# <dbl> <chr> <chr> <chr> <chr>
#1 3 + A 15, 52 52, 68
#2 3 + B 17 18
#3 1 - C 1, 80 15, 92
aggregate(cbind(start, end) ~ ., df1, toString)