matlab中怎么求数组中非零元素的个数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab中怎么求数组中非零元素的个数相关的知识,希望对你有一定的参考价值。

一行代码就能搞定。c=length(find(a~=0)),求非零个数,a为矩阵


矩阵非零个数

元胞数组非零个数

参考技术A

A =

1     2     0

0     1     1

1     3     0

>> B = (A~=0)      %%%% 比较是否为0

B =

1     1     0

0     1     1

1     1     0

>> result=sum(B(:))      %%%%% 不为0个数求和

result =

6

nonzeros(x) 是求非零元素,提取这些元素,并不适合个数统计

重要功能

    ·MATLAB®: MATLAB 语言的单元测试框架

    ·Trading Toolbox™: 一款用于访问价格并将订单发送到交易系统的新产品

    ·Financial Instruments Toolbox™: 赫尔-怀特、线性高斯和 LIBOR 市场模型的校准和 Monte Carlo 仿真

    ·Image Processing Toolbox™: 使用有效轮廓进行图像分割、对 10 个函数实现 C 代码生成,对 11 个函数使用 GPU 加速

    ·Image Acquisition Toolbox™: 提供了用于采集图像、深度图和框架数据的 Kinect® for Windows®传感器支持

    ·Statistics Toolbox™: 用于二进制分类的支持向量机 (SVM)、用于缺失数据的 PCA 算法和 Anderson-Darling 拟合优度检验

    MATLAB工作界面

    MATLAB工作界面

    ·Data Acquisition Toolbox™: 为 Digilent Analog Discovery Design Kit 提供了支持包

    ·Vehicle Network Toolbox™: 为访问 CAN 总线上的 ECU 提供 XCP

参考技术B A =
1 2 0
0 1 1
1 3 0
>> B = (A~=0) %%%% 比较是否为0
B =
1 1 0
0 1 1
1 1 0
>> result=sum(B(:)) %%%%% 不为0个数求和
result =
6

nonzeros(x) 是求非零元素,提取这些元素,并不适合个数统计本回答被提问者采纳
参考技术C 更新一下,matlab自带函数nnz可以直接求解非零元素的个数 参考技术D 应该是A =
1 2 0
0 1 1
1 3 0
>>A==zeros(3)
个数=9-sum(A)

MATLAB中查找数组中的非零元素用啥函数

参考技术A B=A~=0
B矩阵中1的值的位置对应A中就是非0元素
参考技术B [r c] = find(A ~= 0),r c表示了所有非零元素的下标 参考技术C 用find即可,您可以试一下1

以上是关于matlab中怎么求数组中非零元素的个数的主要内容,如果未能解决你的问题,请参考以下文章

python数组求和

用matlab怎样估计信号的稀疏度,提供程序最好了

matlab如何统计矩阵中大于或小于某数的元素个数?

matlab中怎么在数组找一个元素

Matlab如何提取非零元素

MATLAB如何取数组中非零的最小值,数组里面都是正数。