Чтобы определить, является ли массив логическим, можно протестировать целый массив или каждый элемент индивидуально. Это полезно когда это необходимо, чтобы подтвердить тип выходных данных функции.
Эта страница показывает несколько способов определить, является ли массив логическим.
Создайте 3 6 матрица и найдите все элементы, больше, чем 0.5
.
A = gallery('uniformdata',[3,6],0) > 0.5
A = 1 0 0 0 1 0 0 1 0 1 1 1 1 1 1 1 0 1
Результатом, A
, является 3 6 логическая матрица.
Используйте функцию whos
, чтобы подтвердить размер, количество байта и класс (или тип данных) матрицы, A
.
whos A
Name Size Bytes Class Attributes A 3x6 18 logical
Результат подтверждает, что A
является 3 6 логической матрицей.
Используйте функцию islogical
, чтобы протестировать, является ли A
логическим.
islogical(A)
ans = 1
Результатом является логический 1
(true
).
Используйте функцию class
, чтобы отобразить строку с именем класса A
.
class(A)
ans = logical
Результат подтверждает, что A
является логическим.
Создайте массив ячеек, C
, и используйте опцию 'islogical'
функции cellfun
, чтобы идентифицировать, какие ячейки содержат логические значения.
C = {1, 0, true, false, pi, A};
cellfun('islogical',C)
ans = 0 0 1 1 0 1
Результатом является логический массив, одного размера как C
.
Чтобы протестировать каждый элемент в числовой матрице, используйте функцию arrayfun
.
arrayfun(@islogical,A)
ans = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Результатом является матрица логических значений, одного размера как A
. arrayfun(@islogical,A)
всегда возвращает матрицу всего логического 1
(true
) или логического 0
(false
) значения.
Используйте эти функции MATLAB®, чтобы определить, является ли массив логическим.
Синтаксис функций | 'OutputSize' | Описание |
---|---|---|
whos(A) | Нет данных | Отображает имя, размер, байты устройства хранения данных, класс и атрибуты переменного A . |
islogical(A) | скаляр | Возвращает логический 1 (true ), если A является логическим массивом; в противном случае возвращается логический 0 (false). Результат совпадает с использованием isa(A,'logical') . |
isa(A,'logical') | скаляр | Возвращает логический 1 (true ), если A является логическим массивом; в противном случае возвращается логический 0 (false). Результат совпадает с использованием islogical(A) . |
class(A) | единственная строка | Возвращает строку с именем класса переменного A . |
cellfun('islogical',A) | Массив, одного размера как A | Для массивов ячеек только. Возвращает логический 1 (true ) для каждой ячейки, которая содержит логический массив; в противном случае возвращается логический 0 (false).
|
arrayfun(@islogical,A) | Массив, одного размера как A | Возвращает массив логического 1 (true ) значения, если A является логическим; в противном случае это возвращает массив логического 0 (false ) значения. |