>test<-c(21,22,22,23,22,23,24)
>duplicated(test)
[1] FALSE FALSE TRUE FALSE TRUE TRUE FALSE
看得出duplicated()给出的是判断坐标:首次出现的22,函数给的值是F,但再次出现就成T了。
>indicator<-duplicated(test)
>table(test[indicator])
22 23
2 1
这是重复出现了几次(不包括首次)
所以你要的加1就行了。
>table(test[indicator])+1
22 23
3 2
如果是统计整个矩阵,比如y那么直接table(y)
>y
[,1] [,2] [,3]
[1,]123
[2,]222
[3,]321
>table(y)
y
1 2 3
2 5 2
所以如果统计所有列,那就自己写个循环吧
for(i in 1:ncol(y)){
table(y[,i])
}