tabulate matlab,matlab中用于统计矩阵数据频率,出现次数的函数
第一種方法:調用MATLAB自帶的函數tabulate統計一個數組中各數字(元素)出現的頻數、頻率
【例1】統計數值型數組中各元素出現的頻數、頻率
>> x = [2 2 6 5 2 3 2 4 3 4 3 4 4 4 4 2 2
6 0 4 7 2 5 8 3 1 3 2 5 3 6 2 3 5
4 3 1 4 2 2 2 3 1 5 2 6 3 4 1 2 5];
>> tabulate(x(:))
Value Count Percent
0 1 1.96%
1 4 7.84%
2 14 27.45%
3 10 19.61%
4 10 19.61%
5 6 11.76%
6 4 7.84%
7 1 1.96%
8 1 1.96%
【例2】統計字符串中各字符出現的頻數、頻率。
>> x = ['If x is a numeric array, TABLE is a numeric matrix.']';
>> tabulate(x)
Value ? ?Count ? Percent
I ? ? ? ?1 ? ? ?2.44%
f ? ? ? ?1 ? ? ?2.44%
x ? ? ? ?2 ? ? ?4.88%
i ? ? ? ?5 ? ? 12.20%
s ? ? ? ?2 ? ? ?4.88%
a ? ? ? ?5 ? ? 12.20%
n ? ? ? ?2 ? ? ?4.88%
u ? ? ? ?2 ? ? ?4.88%
m ? ? ? ?3 ? ? ?7.32%
e ? ? ? ?2 ? ? ?4.88%
r ? ? ? ?5 ? ? 12.20%
c ? ? ? ?2 ? ? ?4.88%
y ? ? ? ?1 ? ? ?2.44%
, ? ? ? ?1 ? ? ?2.44%
T ? ? ? ?1 ? ? ?2.44%
A ? ? ? ?1 ? ? ?2.44%
B ? ? ? ?1 ? ? ?2.44%
L ? ? ? ?1 ? ? ?2.44%
E ? ? ? ?1 ? ? ?2.44%
t ? ? ? ?1 ? ? ?2.44%
. ? ? ? ?1 ? ? ?2.44%
【例3】統計字符型數組中各行元素出現的頻數、頻率。
>> x = ['崔家峰';'孫乃喆';'安立群';'王洪武';'王玉杰';'高純靜';'崔家峰';
'葉 鵬';'關澤滿';'謝中華';'王宏志';'孫乃喆';'崔家峰';'謝中華'];
>> tabulate(x)
Value ? ?Count ? Percent
崔家峰 ? ? ? ?3 ? ? 21.43%
孫乃喆 ? ? ? ?2 ? ? 14.29%
安立群 ? ? ? ?1 ? ? ?7.14%
王洪武 ? ? ? ?1 ? ? ?7.14%
王玉杰 ? ? ? ?1 ? ? ?7.14%
高純靜 ? ? ? ?1 ? ? ?7.14%
葉 鵬 ? ? ? ?1 ? ? ?7.14%
關澤滿 ? ? ? ?1 ? ? ?7.14%
謝中華 ? ? ? ?2 ? ? 14.29%
王宏志 ? ? ? ?1 ? ? ?7.14%
【例4】統計字符串元胞數組中各字符串出現的頻數、頻率。
>> x = {'崔家峰';'孫乃喆';'安立群';'王洪武';'王玉杰';'高純靜';'崔家峰';
'葉鵬';'關澤滿';'謝中華';'王宏志';'孫乃喆';'崔家峰';'謝中華'};
>> tabulate(x)
Value ? ?Count ? Percent
崔家峰 ? ? ? ?3 ? ? 21.43%
孫乃喆 ? ? ? ?2 ? ? 14.29%
安立群 ? ? ? ?1 ? ? ?7.14%
王洪武 ? ? ? ?1 ? ? ?7.14%
王玉杰 ? ? ? ?1 ? ? ?7.14%
高純靜 ? ? ? ?1 ? ? ?7.14%
葉鵬 ? ? ? ?1 ? ? ?7.14%
關澤滿 ? ? ? ?1 ? ? ?7.14%
謝中華 ? ? ? ?2 ? ? 14.29%
王宏志 ? ? ? ?1 ? ? ?7.14%
【例5】統計名義尺度(如性別,職業,產品型號等)數組中各元素出現的頻數、頻率。
>> load fisheriris
>> species = nominal(species);
>> tabulate(species)
Value ? ?Count ? Percent
setosa ? ? ? 50 ? ? 33.33%
versicolor ? ? ? 50 ? ? 33.33%
virginica ? ? ? 50 ? ? 33.33%
另外,可以使用hist來統計vector中各個變量出現的次數
hist應該是可以的,你試試 比如說 x=1:10; >> y=1:10; >> [m,n]=hist(y,x) m = 1? ???1? ???1? ???1? ???1? ???1? ???1? ???1? ???1? ???1 n = 1? ???2? ???3? ???4? ???5? ???6? ???7? ???8? ???9? ? 10 m是對應的出現的次數,n是對應的量
總結
以上是生活随笔為你收集整理的tabulate matlab,matlab中用于统计矩阵数据频率,出现次数的函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: execl执行linux命令,使用exe
- 下一篇: linux显示点阵字体,Fedora 1