How to count the frequency of each type of column vector present in a matrix
4 次查看(过去 30 天)
显示 更早的评论
I have a matrix R(21,3)
R=[1,1,1,2,2,2,1,2,2,1,4,2,2,2,2,1,2,1,3,1,1;1,1,2,2,2,1,2,2,1,4,2,2,2,2,1,2,1,3,1,1,1;1,2,2,2,1,2,2,1,4,2,2,2,2,1,2,1,3,1,1,1,1];
and I would like to count the frequency of each column vector present from the whole matrix. For instance column vector a=[2,2,2]' is present 3 times, vector b=[2,2,1]' is present 3 times, vector c=[1,4,2]' is present only once. A table with all column vectors and their frequency.
0 个评论
采纳的回答
David Hill
2021-3-18
R=[1,1,1,2,2,2,1,2,2,1,4,2,2,2,2,1,2,1,3,1,1;1,1,2,2,2,1,2,2,1,4,2,2,2,2,1,2,1,3,1,1,1;1,2,2,2,1,2,2,1,4,2,2,2,2,1,2,1,3,1,1,1,1];
a=[2 2 2];
nnz(ismember(R',a,'rows'));
4 个评论
David Hill
2021-3-19
R=[1,1,1,2,2,2,1,2,2,1,4,2,2,2,2,1,2,1,3,1,1;1,1,2,2,2,1,2,2,1,4,2,2,2,2,1,2,1,3,1,1,1;1,2,2,2,1,2,2,1,4,2,2,2,2,1,2,1,3,1,1,1,1];
[r,idx]=sort(sum(R.*[13;17;19]));%choose primes such that the number of repetitions of each will not exceed
[rr,idx2]=unique(r);
numberOfeachUniqueR=histcounts(r,[rr,r(end)+1]);%generates the number of occurrances of each unique triplet
UniqueR=R(:,idx(idx2));%generates cooresponding unique tripets (just like your output above)
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!