查看单个帖子
旧 2019-12-10, 16:49   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 如何在多维数组上使用any()?

我正在测试任意大,任意维度的逻辑数组,并且我想找出其中的任意一个或多个是否正确。 any()只能在一个维度上工作, sum() 。我知道我可以测试维数并重复any()直到得到一个答案,但是我希望有一种更快,更坦率,更优雅的方法。

有想法吗?

我正在运行2009a(按照旧的说法,是R17)。


回答:
如果您的数据在矩阵A中 ,请尝试以下操作:

anyAreTrue = any(A(:)); 编辑:为了向不熟悉语法的任何人解释更多信息, A(:)使用冒号运算符获取数组A的全部内容,而不管其尺寸如何,并将它们整形为单个列向量(大小numel(A)-by-1)。只需要对ANY进行一次调用即可对所得列向量进行操作。



更多&回答...
poster 当前离线   回复时引用此帖