我有一个需求,我想aggregatereshape就能满足,但我不太明白.

我有一张名单(brand),以及随附的身份证号码(id).这些数据是长格式的,因此名称可以有多个ID.我想用名称(brand)消除重复,并将多个可能的id连接成一个字符串,用注释分隔.

例如:

brand            id 
RadioShack       2308
Rag & Bone       4466
Ragu             1830
Ragu             4518
Ralph Lauren     1638
Ralph Lauren     2719
Ralph Lauren     2720
Ralph Lauren     2721
Ralph Lauren     2722 

应该成为:

RadioShack       2308
Rag & Bone       4466
Ragu             1830,4518
Ralph Lauren     1638,2719,2720,2721,2722

我该如何做到这一点?

推荐答案

让我们调用您的数据.第DF

> aggregate(id ~ brand, data = DF, c)
         brand                           id
1   RadioShack                         2308
2   Rag & Bone                         4466
3         Ragu                   1830, 4518
4 Ralph Lauren 1638, 2719, 2720, 2721, 2722

使用aggregate的另一种 Select 是:

result <- aggregate(id ~ brand, data = DF, paste, collapse = ",")

这产生了同样的结果,现在id不再是list.感谢@Frank comment.要查看每列的标题,请try :

> sapply(result, class)
      brand          id 
   "factor" "character"

正如@Davidernburg在 comments 中提到的,另一种 Select 是使用toString函数:

aggregate(id ~ brand, data = DF, toString)

R相关问答推荐

从R中的函数中提取变量以及它们来自哪些环境?

如何以编程方式将X轴勾号上的希腊符号合并到R图中?

在R中,将一个函数作为输入传递给另一个函数时进行参数判断

R等效于LABpascal(n,1)不同的列符号

如何删除R中除某些特定名称外的所有字符串?

从开始时间和结束时间导出时间

如何自定义Shapviz图?

使用case_match()和char数组重新编码值

如果第一个列表中的元素等于第二个列表的元素,则替换为第三个列表的元素

如何得到R中唯一的组合群?

为什么当用osmdata映射R时会得到相邻状态?

在RStudio中堆叠条形图和折线图

仅在Facet_WRAP()中的相应方面包含geom_abline()

更改STAT_VALLES/STAT_PEAKS中的箭头线宽/大小

将箭头绘制在图形外部,而不是图形内部

从多面条形图中删除可变部分

WRS2包中带有bwtrim的简单ANOVA抛出错误

判断函数未加载R中的库

变异以按组从其他列创建具有最大和最小值的新列

使用函数从R中的列中删除标高