Get the probability of a matrices

2 ビュー (過去 30 日間)
fyza affandi
fyza affandi 2018 年 12 月 15 日
編集済み: madhan ravi 2018 年 12 月 15 日
I have a matrix E1
1 1 4 5 1 1 3 1
1 1 2 5 1 1 1 1
3 4 1 3 5 10 5 4
4 2 3 4 5 8 4 1
1 2 12 16 1 1 3 3
1 2 10 14 1 1 1 1
1 1 10 8 2 5 3 15
5 2 1 3 2 21 1 11
I sort the symbols into a table
%calculate the freq%
[a,b]=hist(E1,unique(E1));
out=[b' sum((a),2)];
%Sorting into table%
Table = array2table(out,'VariableNames',{'Symbol','Count'})
%Rearrange table in descending order%
tblB = sortrows(Table,{'Count'},{'descend'})
And the result turns into this
Symbol Count
______ _____
1 25
3 8
2 7
5 7
4 6
10 3
8 2
11 1
12 1
14 1
15 1
16 1
21 1
So my question is how can I get the probabilities of each symbols in vector?
The desired result is as below
mat=[0.3906 0.125 0.1094 0.1094 0.0938 0.0469 0.0313 0.0156 0.0156 0.0156 0.0156 0.0156 0.0156];

採用された回答

madhan ravi
madhan ravi 2018 年 12 月 15 日
mat=tblB.Symbol./sum(tblB.Count) %though the pattern is not discernible
  2 件のコメント
fyza affandi
fyza affandi 2018 年 12 月 15 日
Thank you.
After some corrections , I get the answer.
mat=[];
for matz=1:height(tblB)
mat=[mat,tblB.Count(matz)/sum(tblB.Count)]
end
madhan ravi
madhan ravi 2018 年 12 月 15 日
編集済み: madhan ravi 2018 年 12 月 15 日
Anytime :) , if my answer helped you make sure to accept the answer.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by