matlab中遇到的若干函数总结

来源:互联网 发布:淘宝上卖燕窝不让卖 编辑:程序博客网 时间:2024/06/07 02:31

1.sum 

B = sum(A) 返回数组中各维的元素和。如果A是一个向量(即一个n行1列的矩阵),sum(A)返回这个向量中所有元素的和;如果A是一个矩阵,sum(A)把A的各列看做一个向量,并返回一个行向量(即一个1行n列的矩阵),这个行向量的第n个元素是A中第n列元素的和;如果A是一个多维数组,sum(A)仅仅计算A中第一个非奇异维,并把它看成一个向量,计算后返回一个行向量组 .

B = sum(A,dim)

只对A中第dim维的元素进行计算。如果dim是1,计算各列的元素之和;如果dim是2,则计算A中各行元素之和。

2.

mode

M = mode(X) 
计算X矩阵,每列的频率最大值的行向量。 《Simulink与信号处理》 
当有多个值有相等的频率时,mode返回这个最小的值 [M,F]=mode(X)  F是m发生的个数。

3.bwareaopen

BW2 = bwareaopen(BW,P,conn)
%删除二值图像BW中面积小于P的对象,默认情况下conn使用8邻域

4.logical

将数据类型转换成逻辑类型(true 或false)!
任何非零的数据都转换成true,而0被转换成false;

bool=logical(-1)

bool = 1

5.matlab统计一个数组中各元素出现的频数和频率

tabulate函数

 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%

效果就是这样的

0 0
原创粉丝点击