Main Content

union

クラス: dataset

(非推奨) データセット配列の観測の和集合

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 について、これら 2 つの配列からの観測値を結合したセットから重複を除いたものを返します。データセット配列 C の観測値は並べ替えられています。

C = union(A,B,vars) は、2 つの配列から観測値の組み合わせセットを返します。これは、vars で指定された変数の一意の組み合わせの重複が除外されています。データセット配列 C の観測は、これらの変数によって並べ替えられています。

C の各観測の vars で指定されていない変数の値は、A または B の対応する観測値から取得されるか、AB に共通の観測値がある場合は A から取得されます。A または B に、C の観測に対応する観測が複数ある場合、その最初の観測からの値が使用されます。

C = union(A,B,vars,setOrder) は、C の観測値を setOrder で指定された順序で返します。

[C,iA,iB] = union(___) は、CA(iA,:)B(iB,:) の値の並べ替えられた組み合わせになるような、インデックス ベクトル iA および iB も返します。AB に共通の観測値がある場合は、unioniAA からのインデックスのみを返します。A または B で重複した観測値があると、その最初の出現位置のインデックスが返されます。前の入力引数のいずれも使用できます。

入力引数

A,B

入力データセット配列。

vars

変数名が含まれている文字ベクトルの cell 配列または string 配列、または変数の列番号が含まれている整数のベクトル。vars は、union が変数の一意な組み合わせから重複を削除する変数を指定します。

すべての変数の既定値を使用するには、vars[] として指定します。

setOrder

C の観測値の並べ替え順序を指定するフラグ。setOrder で使用できる値は以下のとおりです。

'sorted'C の観測値は並べ替えられた順番になります (既定の設定)。
'stable'C の観測値はまず A 内の出現順、次に B 内の出現順に配置されます。

出力引数

C

AB の組み合わせた観測セットから重複を除いたデータセット配列。C は並べ替えられた順になるか (既定の設定)、setOrder で指定された順序に並べ替えられます。

iA

A の観測のうち、和集合に寄与するものを特定するインデックス ベクトル。A に重復観測値があると、iA には、その最初の出現値に対するインデックスが格納されます。

iB

B の観測のうち、和集合に寄与するものを特定するインデックス ベクトル。AB に共通の観測値がある場合は、unioniAA からのインデックスのみを返します。B に重復観測値があると、iB には、その最初の出現値に対するインデックスが格納されます。

すべて展開する

標本データを読み込みます。

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 個の観測値があります。2 番目のデータセット配列 B には 8 個の観測値があります。

和集合を返します。

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

    21

2 つのデータセット配列の和集合に 21 個の観測値があるため、AB に観測値の繰り返しが 1 つあったことがわかります。