union

Класс: набор данных

(Не Рекомендуемый) Задать объединение для наблюдений за массивом набора данных

The dataset тип данных не рекомендуется. Для работы с неоднородными данными используйте MATLAB® table вместо этого тип данных. См. MATLAB table документация для получения дополнительной информации.

Синтаксис

C = union(A,B)
C = union(A,B,vars)
C = union(A,B,vars,setOrder)
[C,iA,iB] = union(___)

Описание

C = union(A,B) для dataset массивы A и B возвращает объединенный набор наблюдений из двух массивов с удаленными повторениями. Наблюдения в массиве набора данных C сортируются.

C = union(A,B,vars) возвращает объединенный набор наблюдений из двух массивов с повторениями уникальных комбинаций переменных, заданных в vars удален. Наблюдения в массиве набора данных C сортируются по этим переменным.

Значения для переменных, не заданные в vars для каждого наблюдения в C взяты из соответствующего наблюдения в A или B, или от A если есть общие наблюдения в обоих A и B. Если есть несколько наблюдений в A или B которые соответствуют наблюдению в Cэти значения берутся из первого вхождения.

C = union(A,B,vars,setOrder) возвращает наблюдения в C в порядке, заданном setOrder.

[C,iA,iB] = union(___) также возвращает векторы индекса iA и iB таким образом C - сортированная комбинация значений A(iA,:) и B(iB,:). Если есть общие наблюдения в A и B, затем union возвращает только индекс из A, в iA. Если есть повторные наблюдения в A или B, затем возвращается индекс первого вхождения. Можно использовать любой из предыдущих входных параметров.

Входные параметры

A,B

Входные массивы набора данных.

vars

Строковые массивы или массив ячеек из векторов символов, содержащих имена переменных, или вектор из целых чисел, содержащий переменные номера столбцов. vars указывает переменные, для которых union удаляет повторения уникальных комбинаций переменных.

Задайте vars как [] использовать его значение по умолчанию для всех переменных.

setOrder

Флаг, указывающий порядок сортировки для наблюдений в C. Возможные значения setOrder являются:

'sorted'Наблюдения в C находятся в сортированном порядке (по умолчанию).
'stable'Наблюдения в C находятся в том же порядке, в котором они появляются A, затем B.

Выходные аргументы

C

Массив набора данных с объединенными наблюдениями A и B, с удаленными повторениями. C находится в сортированном порядке (по умолчанию) или в порядке, заданном setOrder.

iA

Вектор индекса, указывающий наблюдения в A которые вносят свой вклад в объединение. iA содержит индекс к первому вхождению любых повторных наблюдений в A.

iB

Вектор индекса, указывающий наблюдения в B которые вносят свой вклад в объединение. Если есть общие наблюдения в A и B, затем union возвращает только индекс из A, в iA. iB содержит индекс к первому вхождению любых повторных наблюдений в B.

Примеры

расширить все

Загрузите выборочные данные.

A = dataset('XLSFile',fullfile(matlabroot,'help/toolbox/stats/examples','hospitalSmall.xlsx'));
B = dataset('XLSFile',fullfile(matlabroot,'help/toolbox/stats/examples','hospitalSmall.xlsx'),'Sheet',2);
[length(A) length(B)]
ans =

    14     8

Первый массив набора данных, A, имеет 14 наблюдений. Второй массив набора данных, B, имеет 8 наблюдений.

Верните объединение.

C = union(A,B);
length(C)
ans =

    21

Объединение двух массивов набора данных имеет 21 наблюдение, что указывает на то, что было одно наблюдение, реплицированное в A и B.