Установите исключающее ИЛИ двух массивов
C = setxor(A,B)
C
= setxor(A,B,setOrder)
C = setxor(A,B,___,'rows')
C = setxor(A,B,'rows',___)
[C,ia,ib]
= setxor(___)
[C,ia,ib]
= setxor(A,B,'legacy')
[C,ia,ib]
= setxor(A,B,'rows','legacy')
возвращает данные C
= setxor(A,B
)A
и B
, которые не находятся в их пересечении (симметричное различие) без повторений. Таким образом, setxor
возвращает данные, которые происходят в A
или B
, но не обоих. C
находится в отсортированном порядке.
Если A
и B
являются таблицами или расписаниями, то setxor
возвращает строки, которые происходят в одном или других из этих двух таблиц, но не обоих. Для расписаний setxor
принимает времена строки во внимание, чтобы определить равенство и сортирует выходное расписание C
ко временам строки.
и C
= setxor(A,B
,___,'rows')
обработайте каждую строку C
= setxor(A,B
,'rows',___)A
и каждую строку B
как одна сущности, и возвращает строки A
и B
, которые не находятся в их пересечении без повторений. Вы должны задать A
и B
и опционально можете задать setOrder
.
Опция 'rows'
не поддерживает массивы ячеек, если одни из входных параметров не являются или категориальным массивом или массивом datetime.
[
также возвращает индексные векторы C
,ia
,ib
]
= setxor(___)ia
и ib
с помощью любого из предыдущих синтаксисов.
Обычно значения в C
являются отсортированной комбинацией элементов A(ia)
и B(ib)
.
Если опция 'rows'
задана, то C
является отсортированной комбинацией строк A(ia,:)
и B(ib,:)
.
Если A
и B
являются таблицами или расписаниями, то C
является отсортированной комбинацией строк A(ia,:)
и B(ib,:)
.
Чтобы найти симметричное различие относительно подмножества переменных из таблицы или расписания, можно использовать индексирование столбца. Например, можно использовать
, где setxor(A(:,vars),B(:,vars))
vars
является положительным целым числом, вектором положительных целых чисел, имени переменной, массива ячеек имен переменных или логического вектора. Также можно использовать vartype
, чтобы создать индекс, который выбирает переменные заданного типа.