根据R中的标签对值求和

时间:2016-06-28 06:35:47

标签: r

如何绘制表格所代表的每个类的总和值:

    a    a,b    a,b,c    c
    5     2       1      2

以上例子的预期结果是:

    a    b    c
    8    3    3

我问这个问题,因为我甚至无法在stackoverflow中的任何地方找到一个紧密的解决方案,所代表的最接近的解决方案是dcast function,但它只检查相等性,而不是存在。

1 个答案:

答案 0 :(得分:3)

使用基础R的一种方式,

sapply(unique(unlist(strsplit(names(df), '\\.'))), function(i) 
                                  sum(df[grepl(i, names(df))]))
#a b c 
#8 3 3 

注意:我使用\\.代替strsplit而不是,,因为名称是这样读的。