假设我有一个包含三列的数据框:第一列指定特征的数量(例如颜色),第二列指定组,如果该组中存在该特征(1)或该组中缺少该特征,则第三列( 0):
> d<-data.frame(feature=c("red","blue","green","yellow","red","blue","green","yellow"), group=c(rep("a",4),rep("b",4)),is_there=c(0,1,1,0,1,1,1,0))
> d
feature group is_there
1 red a 0
2 blue a 1
3 green a 1
4 yellow a 0
5 red b 1
6 blue b 1
7 green b 1
8 yellow b 0
现在我想总结一下有多少特征:1.仅在a组中,仅在b组中以及两组中都有多少。此外,我需要提取两组中存在的特征的名称。我怎样才能做到这一点?我想像这样的功能crossprod
可能会有所帮助,但我无法弄清楚。
输出将类似于:
feature
red 1
blue 2
green 2
yellow 0
或者:
feature a b
red 0 1
blue 1 1
green 1 1
yellow 0 0
无论如何,我需要对一个相当大的数据文件有一个更好的概述(原始文件在大约 10 个组中有数百个特征)。