在R中,我有这个矩阵
> a
id size pattern
[1,] "1" "24" "100"
[2,] "2" "10" "111"
[3,] "3" "2" "111"我想要按模式唯一,添加大小并连接id:
> a
id size pattern
[1,] "1" "24" "100"
[2,] "2-3" "12" "111" (this pattern was duplicated, so add size and concatenate id) 我能做到:
> a = unique(a[,"pattern"])但我不知道怎么添加和连接。
提前感谢!
发布于 2013-08-08 05:49:36
如果您想将某些列作为数字(将值相加在一起)处理,而有些列要作为字符处理(粘贴它们),则矩阵不是适合您的数据的结构。你应该使用一个数据框架。
使用plyr:
library(plyr)
ddply(data.frame(a), .(pattern), summarise,
id=paste(id, collapse="-"),
size=sum(as.numeric(size)))https://stackoverflow.com/questions/18118567
复制相似问题