Matlab tabulate统计数字出现的次数,如果数组中出现0

tabulate使用时候,如果数组中有0的话,间隔出现两个数中间的数字就不会被统计了:
如A=[1 8 3 2 1 2 5 1];
>>tabulate(A( : ));
结果:Value Count Percent
1 3 37.50%
2 2 25.00%
3 1 12.50%
4 0 0.00%
5 1 12.50%
6 0 0.00%
7 0 0.00%
8 1 12.50%
其中5和8在A中,但是6 7不在仍然可以统计出来为0;

但是,
将A中有0:A=[1 8 3 0 2 1 2 5 1 0 ];
>>tabulate(A( : ));
结果:Value Count Percent
0 2 20.00%
1 3 30.00%
2 2 20.00%
3 1 10.00%
5 1 10.00%
8 1 10.00%
得到,5 8 之间的数没有了。有的项目需要统计出来没出现的6 7为0。
方法由评论的一位好心人提供:就是有0时候将各数字加1,统计完成后,各数字再减一,多谢!

欢迎大家提供更多思路!!!!!!!!!!!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值