如何根据另一列的不同条目计算列的条目数

use*_*121 1 perl aggregate r

我在文件中的数据如下所示,有多列:

A                B             

Tiger         Animal         
Parrot        Bird
Lion          Animal
Elephant      Animal
Crow          Bird
Horse         Animal
Man           Human
Dog           Animal
Run Code Online (Sandbox Code Playgroud)

我想在列A中找到与列B中的不同条目对应的条目数.如果可能在R中,或者可能是perl脚本.

输出为:

Animal 5
Bird   2
Human  1
Run Code Online (Sandbox Code Playgroud)

此外,如果可能的话,找出列A中的条目是否已经重复列B中的不同条目

A              B   
Tiger         Animal         
Tiger         Animal
Run Code Online (Sandbox Code Playgroud)

Ric*_*ton 5

tapply 从基地R将很好地解决这个问题.

with(anm, tapply(A, B, function(x) length(unique(x))))
Run Code Online (Sandbox Code Playgroud)