满意答案
lcc1120
2013.04.12
采纳率:55% 等级:12
已帮助:11677人
any
Determine whether any array elements are nonzero
Syntax
B = any(A)
B = any(A,dim)
Description
B = any(A) tests whether any of the elements along various dimensions of an array is a nonzero number or is logical 1 (true). any ignores entries that are NaN (Not a Number).
If A is a vector, any(A) returns logical 1 (true) if any of the elements of A is a nonzero number or is logical 1 (true), and returns logical 0 (false) if all the elements are zero.
If A is a matrix, any(A) treats the columns of A as vectors, returning a row vector of logical 1's and 0's.
If A is a multidimensional array, any(A) treats the values along the first nonsingleton dimension as vectors, returning a logical condition for each vector.
B = any(A,dim) tests along the dimension of A specified by scalar dim.
就是B = any(A),如果A是向量,如果向量里有非0的数,则返回1(true),如果A是矩阵,则把矩阵的列当做向量来处理,函数返回每个列向量的逻辑值;
B = any(A,dim)测试由dim表示的A的维度,返回相应逻辑值
Examples
Example 1 – Reducing a Logical Vector to a Scalar Condition
Given
A = [0.53 0.67 0.01 0.38 0.07 0.42 0.69]
then B = (A < 0.5) returns logical 1 (true) only where A is less than one half:
0 0 1 1 1 1 0
The any function reduces such a vector of logical conditions to a single condition. In this case, any(B) yields logical 1.
This makes any particularly useful in if statements:
if any(A < 0.5)do something
end
where code is executed depending on a single condition, not a vector of possibly conflicting conditions.
Example 2– Reducing a Logical Matrix to a Scalar Condition
Applying the any function twice to a matrix, as in any(any(A)), always reduces it to a scalar condition.
any(any(eye(3)))
ans =
1
Example 3 – Testing Arrays of Any Dimension
You can use the following type of statement on an array of any dimensions. This example tests a 3-D array to see if any of its elements are greater than 3:
x = rand(3,7,5) * 5;
any(x(:) > 3)
ans =
1
or less than zero:
any(x(:) < 0)
ans =
0
15分享举报