Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 其它 > 资料存档
资料存档 资料存档
 
 
主题工具 显示模式
旧 2019-12-10, 16:49   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 “矩阵是否包含值X?”的函数

是否有内置的MATLAB函数来确定矩阵是否包含某个值? (ala PHP的in_array() )


回答:
有很多方法可以做到这一点。 ismember是第一个想到的成员,因为这是您希望采取的固定成员资格操作。从而

X = primes(20); ismember([15 17],X) ans = 0 1 因为15不是素数,但是17是,ismember在这里做得很好。

当然,查找(或任何查找)也将起作用。但是这些不是按照ismember的意义进行向量化的。我们可以测试以查看X表示的集合中是否包含15,但是要测试这两个数字将需要循环或连续进行测试。

~isempty(find(X == 15)) ~isempty(find(X == 17)) 要么,

any(X == 15) any(X == 17) 最后,我要指出的是,如果数字可能是真实的浮点数,则测试精确值非常危险。如我所示,对整数值进行测试很容易。但是针对浮点数的测试通常应采用公差。

tol = 10*eps; any(abs(X - 3.1415926535897932384)
poster 当前离线   回复时引用此帖
 


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛禁用 表情符号
论坛启用 [IMG] 代码
论坛启用 HTML 代码



所有时间均为北京时间。现在的时间是 21:15


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.