打印列中具有相同值的行中的级别计数

时间:2019-05-08 06:34:12

标签: r count

说我有一个数据框df

c1   c2
A    porcupine
A    snail
A    snail
B    porcupine
B    snail
B    goose

我想使用此数据帧生成另一个数据帧,该数据帧报告c2中与c1中的唯一字符串相对应的不同值的计数。因此,以上述示例为例,

v1   v2
A    2
B    3

因为c2中只有两个不同的值,而c1中的字符串是“ A”,而c2中有三个不同的值,而{{ 1}}。

我猜我需要使用sapply,但是我不确定如何使用。

1 个答案:

答案 0 :(得分:0)

aggregate(c2 ~ c1, df, function(x) length(unique(x)))

  c1 c2
1  A  2
2  B  3